On Tue, 16 Dec 2008, Peter Wemm wrote:

On Sat, Dec 13, 2008 at 1:59 PM, Bjoern A. Zeeb <b...@freebsd.org> wrote:
 De-virtualize the MD5 context for TCP initial seq number generation
 and make it a function local variable like we do almost everywhere
 inside the kernel.
[..]
--- head/sys/netinet/vinet.h    Sat Dec 13 21:17:46 2008        (r186056)
+++ head/sys/netinet/vinet.h    Sat Dec 13 21:59:18 2008        (r186057)
@@ -142,7 +142,6 @@ struct vnet_inet {
...
I'm bitterly unhappy with this.  Every time these structs are touched,
either directly or indirectly, there is a guaranteed ABI breakage with
kernel modules.

There needs to be a __FreeBSD_version bump (or something similar)
every time any of these structures change, and any kernel modules
*must* be prevented from loading.  It can't be a >= some version, it
has to be an exact match.
...
In the mean time, I'd like to see some compile-time asserts in there
to make sure there are no accidental size changes of this structure.

This has finally happened, thanks to Juli Mallett now finding a good
CTASSERT-a-like way that also prints the expected and the actual size.

Without that I had found it was impossible to get the proper values
for all architectures we support to be able to (cross) build or finish
a universe when trying to implement this end of last year.

/bz

--
Bjoern A. Zeeb                      The greatest risk is not taking one.
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to