Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Oct 2006 16:43:08 -0400
From:      Kris Kennaway <kris@obsecurity.org>
To:        "R. B. Riddick" <arne_woerner@yahoo.com>
Cc:        freebsd-fs@freebsd.org, Kris Kennaway <kris@obsecurity.org>
Subject:   Re: 2 bonnies can stop disk activity permanently
Message-ID:  <20061008204308.GA7702@xor.obsecurity.org>
In-Reply-To: <20061008203349.84148.qmail@web30312.mail.mud.yahoo.com>
References:  <20061008203349.84148.qmail@web30312.mail.mud.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--mP3DRpeJDSE+ciuQ
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

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 ;-)
> >>>=20
> >>> 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 obv=
ious.=20
> >> =3D-(  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.
>=20
> But we just found out, that it happens when we use "newfs -b 65536", but =
not with default "-b" value (whatever that might be)...
>=20
> 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+0x=
5ab
ffs_write(ec921b9c,0,c07535f4,0,0,...) at ffs_write+0x2f2
VOP_WRITE_APV(c07ada20,ec921b9c,c87a6510,c54d5c60,2,...) at VOP_WRITE_APV+0=
x9a
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 =3D 0x28155dff, esp =3D 0xbfbf73=
6c, ebp =3D 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+0=
x72
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+0=
x9a
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 =3D 0x28155dff, esp =3D 0xbfbf73=
6c, ebp =3D 0xbfbfe838 ---
db>

Kris

--mP3DRpeJDSE+ciuQ
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (FreeBSD)

iD8DBQFFKWLbWry0BWjoQKURAhYEAKCr/KsTlrpfgcn5JPq6Lc7HcY/LBwCgjsDn
NCg2VRMnxO8xbit/xmqKtuQ=
=ror+
-----END PGP SIGNATURE-----

--mP3DRpeJDSE+ciuQ--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061008204308.GA7702>