Date: Fri, 07 Jan 2011 16:15:17 +1100 From: Lawrence Stewart <lstewart@freebsd.org> To: "George V. Neville-Neil" <gnn@FreeBSD.org> Cc: src-committers@FreeBSD.org, svn-src-stable@FreeBSD.org, svn-src-all@FreeBSD.org, "Bjoern A. Zeeb" <bz@FreeBSD.org>, svn-src-stable-8@FreeBSD.org, "Robert N. M. Watson" <rwatson@FreeBSD.org> Subject: Re: svn commit: r217018 - stable/8/sys/netinet Message-ID: <4D26A165.3070001@freebsd.org> In-Reply-To: <201101051852.p05IqUjK087769@svn.freebsd.org> References: <201101051852.p05IqUjK087769@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi George, On 01/06/11 05:52, George V. Neville-Neil wrote: > Author: gnn > Date: Wed Jan 5 18:52:30 2011 > New Revision: 217018 > URL: http://svn.freebsd.org/changeset/base/217018 > > Log: > Fix binary compatability for netstats across the -x/-T changes > that have been previously MFC'd. > > Reviewed by: rwatson, bz > > Modified: > stable/8/sys/netinet/tcp_var.h > > Modified: stable/8/sys/netinet/tcp_var.h > ============================================================================== > --- stable/8/sys/netinet/tcp_var.h Wed Jan 5 18:46:05 2011 (r217017) > +++ stable/8/sys/netinet/tcp_var.h Wed Jan 5 18:52:30 2011 (r217018) > @@ -177,7 +177,6 @@ struct tcpcb { > u_long snd_cwnd_prev; /* cwnd prior to retransmit */ > u_long snd_ssthresh_prev; /* ssthresh prior to retransmit */ > tcp_seq snd_recover_prev; /* snd_recover prior to retransmit */ > - int t_sndzerowin; /* zero-window updates sent */ > u_int t_badrxtwin; /* window for retransmit recovery */ > u_char snd_limited; /* segments limited transmitted */ > /* SACK related state */ > @@ -194,14 +193,15 @@ struct tcpcb { > u_int32_t rfbuf_ts; /* recv buffer autoscaling timestamp */ > int rfbuf_cnt; /* recv buffer autoscaling byte count */ > struct toe_usrreqs *t_tu; /* offload operations vector */ > - int t_sndrexmitpack; /* retransmit packets sent */ > - int t_rcvoopack; /* out-of-order packets received */ > void *t_toe; /* TOE pcb pointer */ > int t_bytes_acked; /* # bytes acked during current RTT */ > > - int t_ispare; /* explicit pad for 64bit alignment */ > + int t_sndzerowin; /* zero-window updates sent */ > + uint64_t t_sndrexmitpack;/* retransmit packets sent */ > + uint64_t t_rcvoopack; /* out-of-order packets received */ > + > void *t_pspare2[6]; /* 2 CC / 4 TBD */ > - uint64_t _pad[12]; /* 7 UTO, 5 TBD (1-2 CC/RTT?) */ > + uint64_t _pad[10]; /* 7 UTO, 3 TBD (1-2 CC/RTT?) */ > }; On my stable/8 machine after updating world but not kernel I see "struct xtcpcb size mismatch" messages which indicates the ABI has been futzed with. Looking at the above diff I think this commit does indeed change the ABI and therefore needs to be tweaked in order to maintain our current ABI preservation policy for stable branches (unless I'm missing something?). If the change to the ABI is intentional, a note in UPDATING would probably be warranted. Cheers, Lawrence
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D26A165.3070001>