Is socket buffer locking as questionable as it seems?
Brian F. Feldman
green at freebsd.org
Sat Oct 4 16:27:55 PDT 2003
Sam Leffler <sam at errno.com> wrote:
> 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.
I turned off sync on panic so maybe I'll be okay now. That never, ever,
worked for me starting a couple years ago and I forgot I had it disabled
locally. I see it immediately on boot and I couldn't tell you why; this is
a NAT box, and a million other things. I'm running the most current current
I can possibly run, of course.
Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\
<> green at FreeBSD.org \ The Power to Serve! \
Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\
More information about the freebsd-hackers