git: 0d8da0df4150 - main - tcp_rack: avoid gcc -Werror=pointer-to-int-cast on 32-bit arch
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 28 Jun 2024 03:41:17 UTC
The branch main has been updated by rlibby: URL: https://cgit.FreeBSD.org/src/commit/?id=0d8da0df415091d6ceceb74e4b6f42a15a3269e3 commit 0d8da0df415091d6ceceb74e4b6f42a15a3269e3 Author: Ryan Libby <rlibby@FreeBSD.org> AuthorDate: 2024-06-28 03:40:12 +0000 Commit: Ryan Libby <rlibby@FreeBSD.org> CommitDate: 2024-06-28 03:40:12 +0000 tcp_rack: avoid gcc -Werror=pointer-to-int-cast on 32-bit arch Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D45752 --- sys/netinet/tcp_stacks/rack.c | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 551ccc1d337a..b7d9d383fc61 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -2643,6 +2643,7 @@ rack_log_hdwr_pacing(struct tcp_rack *rack, union tcp_log_stackspecific log; struct timeval tv; const struct ifnet *ifp; + uint64_t ifp64; memset(&log, 0, sizeof(log)); log.u_bbr.flex1 = ((hw_rate >> 32) & 0x00000000ffffffff); @@ -2655,8 +2656,9 @@ rack_log_hdwr_pacing(struct tcp_rack *rack, } else ifp = NULL; if (ifp) { - log.u_bbr.flex3 = (((uint64_t)ifp >> 32) & 0x00000000ffffffff); - log.u_bbr.flex4 = ((uint64_t)ifp & 0x00000000ffffffff); + ifp64 = (uintptr_t)ifp; + log.u_bbr.flex3 = ((ifp64 >> 32) & 0x00000000ffffffff); + log.u_bbr.flex4 = (ifp64 & 0x00000000ffffffff); } log.u_bbr.timeStamp = tcp_get_usecs(&tv); log.u_bbr.bw_inuse = rate; @@ -2881,9 +2883,9 @@ rack_log_map_chg(struct tcpcb *tp, struct tcp_rack *rack, memset(&log.u_bbr, 0, sizeof(log.u_bbr)); log.u_bbr.flex8 = flag; log.u_bbr.inhpts = tcp_in_hpts(rack->rc_tp); - log.u_bbr.cur_del_rate = (uint64_t)prev; - log.u_bbr.delRate = (uint64_t)rsm; - log.u_bbr.rttProp = (uint64_t)next; + log.u_bbr.cur_del_rate = (uintptr_t)prev; + log.u_bbr.delRate = (uintptr_t)rsm; + log.u_bbr.rttProp = (uintptr_t)next; log.u_bbr.flex7 = 0; if (prev) { log.u_bbr.flex1 = prev->r_start; @@ -5527,7 +5529,7 @@ skip_measurement: rack_log_pacing_delay_calc(rack, tp->gput_seq, tp->gput_ack, - (uint64_t)rsm, + (uintptr_t)rsm, tp->gput_ts, (((uint64_t)rack->r_ctl.rc_app_limited_cnt << 32) | (uint64_t)rack->r_ctl.rc_gp_output_ts), 9, @@ -12739,7 +12741,7 @@ rack_log_collapse(struct tcp_rack *rack, uint32_t cnt, uint32_t split, uint32_t if (rsm == NULL) log.u_bbr.rttProp = 0; else - log.u_bbr.rttProp = (uint64_t)rsm; + log.u_bbr.rttProp = (uintptr_t)rsm; log.u_bbr.timeStamp = tcp_get_usecs(&tv); log.u_bbr.inflight = ctf_flight_size(rack->rc_tp, rack->r_ctl.rc_sacked); TCP_LOG_EVENTP(rack->rc_tp, NULL, @@ -15878,9 +15880,9 @@ rack_fini(struct tcpcb *tp, int32_t tcb_is_purged) log.u_bbr.flex3 = cnt_free; log.u_bbr.inflight = ctf_flight_size(rack->rc_tp, rack->r_ctl.rc_sacked); rsm = tqhash_min(rack->r_ctl.tqh); - log.u_bbr.delRate = (uint64_t)rsm; + log.u_bbr.delRate = (uintptr_t)rsm; rsm = TAILQ_FIRST(&rack->r_ctl.rc_free); - log.u_bbr.cur_del_rate = (uint64_t)rsm; + log.u_bbr.cur_del_rate = (uintptr_t)rsm; log.u_bbr.timeStamp = tcp_get_usecs(&tv); log.u_bbr.pkt_epoch = __LINE__; (void)tcp_log_event(tp, NULL, NULL, NULL, TCP_LOG_OUT, ERRNO_UNK, @@ -18885,7 +18887,7 @@ start_set: rack_log_pacing_delay_calc(rack, tp->gput_seq, tp->gput_ack, - (uint64_t)my_rsm, + (uintptr_t)my_rsm, tp->gput_ts, (((uint64_t)rack->r_ctl.rc_app_limited_cnt << 32) | (uint64_t)rack->r_ctl.rc_gp_output_ts), 9, @@ -18938,7 +18940,7 @@ use_latest: rack_log_pacing_delay_calc(rack, tp->gput_seq, tp->gput_ack, - (uint64_t)my_rsm, + (uintptr_t)my_rsm, tp->gput_ts, (((uint64_t)rack->r_ctl.rc_app_limited_cnt << 32) | (uint64_t)rack->r_ctl.rc_gp_output_ts), 9, __LINE__, NULL, 0); @@ -19754,7 +19756,7 @@ rack_fast_rsm_output(struct tcpcb *tp, struct tcp_rack *rack, struct rack_sendma } log.u_bbr.lt_epoch = rack->r_ctl.cwnd_to_use; log.u_bbr.delivered = 0; - log.u_bbr.rttProp = (uint64_t)rsm; + log.u_bbr.rttProp = (uintptr_t)rsm; log.u_bbr.delRate = rsm->r_flags; log.u_bbr.delRate <<= 31; log.u_bbr.delRate |= rack->r_must_retran; @@ -22941,7 +22943,7 @@ send: } log.u_bbr.lt_epoch = cwnd_to_use; log.u_bbr.delivered = sendalot; - log.u_bbr.rttProp = (uint64_t)rsm; + log.u_bbr.rttProp = (uintptr_t)rsm; log.u_bbr.pkt_epoch = __LINE__; if (rsm) { log.u_bbr.delRate = rsm->r_flags;