2 bonnies can stop disk activity permanently
Kris Kennaway
kris at obsecurity.org
Sun Oct 8 13:43:09 PDT 2006
On Sun, Oct 08, 2006 at 01:33:49PM -0700, R. B. Riddick wrote:
> Bruce wrote:
> >On Sun, 8 Oct 2006, Scott Long wrote:
> >> Kris Kennaway wrote:
> >>> You forgot to even mention what version you're running ;-)
> >>>
> >>> Also show your kernel config file. Configure DDB per the chapter on
> >>>
> >> No need for all of that information, the bug in vfs_bio.c is quite obvious.
> >> =-( Fixing it will take some thought, though.
> >
> >Is it really obvious? I think it is only obvious that many things are
> >not quite right. The quick fix of increasing BKVASIZE to the size of
> >the largest buffer used should still work to prevent bkva fragmentation.
> >
> OK: The FBSD version was varying: R6.1, R6.1-CURRENT, R7-CURRENT.
>
> But we just found out, that it happens when we use "newfs -b 65536", but not with default "-b" value (whatever that might be)...
>
> So if somebody wants to reproduce it, he/she should use >R6 and "newfs -b 65536"...
> I think that were all steps to do...
Thanks, I can now reproduce on 7.0.
8197 3980 8197 0 S+ nbufkv 0xc07cec08 bonnie
8196 3980 8196 0 S+ nbufkv 0xc07cec08 bonnie
db> wh 8197
Tracing pid 8197 tid 100205 td 0xc87a6510
sched_switch(c87a6510,0,1,15e,4,...) at sched_switch+0x120
mi_switch(1,0,c0758aba,1bf,0,...) at mi_switch+0x1b2
sleepq_switch(c07c5390,0,c0758aba,211,ec9217d0,...) at sleepq_switch+0xee
sleepq_wait(c07cec08,0,c075614c,c9,0,...) at sleepq_wait+0x3e
msleep(c07cec08,c07cec0c,50,c075dece,0,...) at msleep+0x171
getnewbuf(10000,10000,c075da89,9fe,10000,...) at getnewbuf+0x319
getblk(c5d58514,fffffff4,ffffffff,10000,0,...) at getblk+0x307
breadn(c5d58514,fffffff4,ffffffff,10000,0,...) at breadn+0x4d
bread(c5d58514,fffffff4,ffffffff,10000,0,...) at bread+0x4c
ffs_balloc_ufs2(c5d58514,273a000,0,2000,c51b0e00,...) at ffs_balloc_ufs2+0x5ab
ffs_write(ec921b9c,0,c07535f4,0,0,...) at ffs_write+0x2f2
VOP_WRITE_APV(c07ada20,ec921b9c,c87a6510,c54d5c60,2,...) at VOP_WRITE_APV+0x9a
vn_write(c54d5c60,ec921c64,c51b0e00,0,c87a6510,...) at vn_write+0x1d5
dofilewrite(c54d5c60,ec921c64,ffffffff,ffffffff,0,...) at dofilewrite+0x7c
kern_writev(c87a6510,3,ec921c64,bfbfc820,2000,...) at kern_writev+0x6b
write(c87a6510,ec921d04,c,158,3,...) at write+0x4d
syscall(820003b,3b,bfbf003b,0,2000,...) at syscall+0x152
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (4, FreeBSD ELF32, write), eip = 0x28155dff, esp = 0xbfbf736c, ebp = 0xbfbfe838 ---
db> wh 8196
Tracing pid 8196 tid 100138 td 0xc50c3d80
sched_switch(c50c3d80,0,1,15e,246,...) at sched_switch+0x120
mi_switch(1,0,c0758aba,1bf,0,...) at mi_switch+0x1b2
sleepq_switch(c07c5390,0,c0758aba,211,ec79b820,...) at sleepq_switch+0xee
sleepq_wait(c07cec08,0,c075614c,c9,0,...) at sleepq_wait+0x3e
msleep(c07cec08,c07cec0c,50,c075dece,0,...) at msleep+0x171
getnewbuf(10000,10000,c075da89,9fe,10000,...) at getnewbuf+0x319
getblk(c5e6d514,fffffff4,ffffffff,10000,0,...) at getblk+0x307
ufs_bmaparray(c5e6d514,3cc,0,ec79b994,0,...) at ufs_bmaparray+0x298
ufs_bmap(ec79b9dc,c075da89,1ac) at ufs_bmap+0x69
VOP_BMAP_APV(c07ada20,ec79b9dc,c075da89,3b7,ffffffff,...) at VOP_BMAP_APV+0x72
bdwrite(ddbe5790,0,ec79bc64,2000,c51b0e00,...) at bdwrite+0x485
ffs_write(ec79bb9c,0,c07535f4,0,0,...) at ffs_write+0x5b5
VOP_WRITE_APV(c07ada20,ec79bb9c,c50c3d80,c5058c60,2,...) at VOP_WRITE_APV+0x9a
vn_write(c5058c60,ec79bc64,c51b0e00,0,c50c3d80,...) at vn_write+0x1d5
dofilewrite(c5058c60,ec79bc64,ffffffff,ffffffff,0,...) at dofilewrite+0x7c
kern_writev(c50c3d80,3,ec79bc64,bfbfe820,0,...) at kern_writev+0x6b
write(c50c3d80,ec79bd04,c,158,3,...) at write+0x4d
syscall(3b,3b,bfbf003b,0,2000,...) at syscall+0x152
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (4, FreeBSD ELF32, write), eip = 0x28155dff, esp = 0xbfbf736c, ebp = 0xbfbfe838 ---
db>
Kris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20061008/7d684d2f/attachment.pgp
More information about the freebsd-fs
mailing list