HomeFreeBSD

Fix a bug in sblock() that has existed since revision 1.1 from BSD:
rS171162Unpublished

Unpublished Commit ยท Learn More

No further details are available.

Description

Fix a bug in sblock() that has existed since revision 1.1 from BSD:
correctly return an error if M_NOWAIT is passed to sblock() and the
operation might block. This remarkably subtle macro bug appears to
be responsible for quite a few undiagnosed socket buffer corruption
and mbuf-related kernel panics.

This bug has already been fixed in 7-CURRENT as part of the move to
using sx(9) locks to serialize simultaneous socket I/O, but is an
MFC candidate for all earlier FreeBSD -STABLE branches.

MFC after: 2 weeks
Found by: Isilon
Submitted by: jeff
Tested by: jhb, Yahoo!

Details

Provenance
rwatsonAuthored on
Parents
rS171161: Fixing !INET6 + FAST_IPSEC builds.
Branches
Unknown
Tags
Unknown

Event Timeline