cvs commit: src/sys/netinet udp_usrreq.c src/sys/netinet6 ip6_input.c ip6_var.h

Robert Watson rwatson at FreeBSD.org
Sat May 24 16:18:23 UTC 2008


On Sat, 24 May 2008, Bjoern A. Zeeb wrote:

>  Factor out the v4-only vs. the v6-only inp_flags processing in
>  ip6_savecontrol in preparation for udp_append() to no longer
>  need an WLOCK as we will no longer be modifying socket options.

Much appreciated, thanks.  There are some other similar cases in the stack, 
such as routing-related socket option handling, where rather than have two 
code paths of a stack-based argument, the authors went with modifying 
potentially global state.  This is now coming back to bite us as it requires 
fundamentally local paths to acquire global scope locks exclusively to protect 
that state, so we should make sure to continue cleaning these things up as we 
find them.

Robert N M Watson
Computer Laboratory
University of Cambridge


More information about the cvs-src mailing list