Is socket buffer locking as questionable as it seems?

Sam Leffler sam at errno.com
Sat Oct 4 11:41:40 PDT 2003


On Friday 03 October 2003 10:38 pm, Brian Fundakowski Feldman wrote:
> I keep getting these panics on my SMP box (no backtrace or DDB or crash
> dump of course, because panic() == hang to FreeBSD these days):
> panic: receive: m == 0 so->so_rcv.sb_cc == 52
> From what I can tell, all sorts of socket-related calls are "MP-safe"
> and yet never even come close to locking the socket buffer.  From
> what I can tell, the easiest way for this occur would be sbrelease()
> being called from somewhere that it's supposed to, but doesn't, have
> sblock().  Has anyone seen these, or a place to start looking?  Maybe
> a way to get panics to stop hanging the machine?  TIA if anyone has
> some enlightenment.

Haven't seen anything on my SMP test box.  As Robert has already said sockets 
are still implicitly locked by Giant.  You need to provide more information 
like what version you are running and what your system is doing when the 
panic occurs.

FWIW panic does not hang for me so you might first try to figure out why 
that's occuring.

	Sam



More information about the freebsd-hackers mailing list