Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Jun 1995 13:50:50 +0800 (CST)
From:      Brian Tao <taob@gate.sinica.edu.tw>
To:        FREEBSD-HACKERS-L <freebsd-hackers@freebsd.org>
Subject:   panic: biodone: page busy < 0 (cannot sync disks)
Message-ID:  <Pine.BSI.3.91.950609134854.190A-100000@leo>

next in thread | raw e-mail | index | archive | help
    I was trying out my HTTP server pounder last night (running on a
Sparc20, server running on my 2.0.5A machine, NCSA httpd 1.4) and
managed to cause the machine to fall over.

    The kernel panic is easily reproducible (I've included syslog
messages from three attempts below).  The first two times happened
not 5 minutes after I had stepped away from the console, the third one
I watched happen.  My HTTP tester simply opens a socket to a specified
port on the server, requests a random URL, downloads the HTML, closes
the socket, and repeats.  I had five such clients running at once.
After approximately 12 to 16 minutes, the system will simply freeze
(I'm in X Windows) and then reboot.

    This 2.0.5A kernel was compiled with NMBCLUSTERS=1024, although
netstat -m during the benchmarking showed less than 500 mbufs in use,
so I don't think that's the problem.  pstat -T shows the vnode count
steadily increasing, plateauing at 1179:

# pstat -T
158/552 files
   1179 vnodes
19M/63M swap space

# /root/bin/vnode
desired 1037 vnodes, have 1181 vnodes

    The vnode util was posted to the list some time ago.  Under normal
conditions, the "desired" and "have" values are identical or off by
one.  I can't think of anything else obvious to check, based on the
syslog messages.  If someone thinks it would be useful, I can try
reproducing this on a 950412-SNAP system, but I'm quite certain it
won't have this problem.  Anything else (besides vnodes) I should be
monitoring around the time of the panic?

    BTW, I thought this might have had something to do with the
Quantum mode page changes I had made, but I put them back the way they
were, and the panic is still reproducible.

/kernel: biodone: page busy < 0, off: 180224, foff: 180224, resid: 4096, index: 0
/kernel:  iosize: 8192, lblkno: 22
/kernel:  valid: 0xff, dirty: 0x0, mapped: 0
/kernel: panic: biodone: page busy < 0
/kernel: 
/kernel: 
/kernel: syncing disks... 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 giving up
/kernel: Automatic reboot in 15 seconds - press a key on the console to abort
/kernel: Rebooting...
[...]
/kernel: biodone: page busy < 0, off: 278528, foff: 278528, resid: 4096, index: 0
/kernel:  iosize: 8192, lblkno: 34
/kernel:  valid: 0xff, dirty: 0x0, mapped: 0
/kernel: panic: biodone: page busy < 0
/kernel: 
/kernel: 
/kernel: syncing disks... 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 giving up
/kernel: Automatic reboot in 15 seconds - press a key on the console to abort
/kernel: Rebooting...
[...]
/kernel: biodone: page busy < 0, off: 139264, foff: 139264, resid: 4096, index: 0
/kernel:  iosize: 8192, lblkno: 17
/kernel:  valid: 0xff, dirty: 0x0, mapped: 0
/kernel: panic: biodone: page busy < 0
/kernel: 
/kernel: 
/kernel: syncing disks... 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 giving up
/kernel: Automatic reboot in 15 seconds - press a key on the console to abort
/kernel: --> Press a key on the console to reboot <--
/kernel: Rebooting...

-- 
Brian ("Though this be madness, yet there is method in't") Tao
taob@gate.sinica.edu.tw <-- work ........ play --> taob@io.org




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSI.3.91.950609134854.190A-100000>