Subject: Panic in subr_pool:817
To: None <tech-kern@netbsd.org>
From: Reinoud Zandijk <reinoud@netbsd.org>
List: tech-kern
Date: 01/10/2006 00:53:12
--IJpNTDwzlM2Ie8A6
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Dear folks,
just now when stress testing UDF i got a panic in subr_pool:817 (pool_get).
Inspecting this line its a SCHED_ASSERT_UNLOCKED(). I dont have a trace
since the machine got wacky but in my recollection it was in vnode or buf
shortage and asked for a clean vnode. This vnode was then recycled from FFS
and then it got wrong.
Anyone else seen this happen before? Could this signal a bug in the pool
code? or in the free lists? I suspect the free lists too since I've seen
UDF do strange things when in resource tight situations. It all goes well
for a long time but then it gets ugly. For unknown reasons buf's containing
directory information are then constantly recycled and buffers just touched
a transaction before seem to be lost again and directories have to be
reread and reread and reread over and over again.
My hypothesis is that buffers are somehow not on the freelist nor on the
age lists anymore (i.e. lost) and the few buffers that eventually are on
the age list gets recycled as soon as they are pushed.
I've dug into my UDF code for that is offcource the most obvious place to
look first but all my buffers are returned with B_AGE set to brelse().
Note that this was a DIAGNOSTIC+DEBUG+LOCKDEBUG+POOL_DIAGNOSTIC kernel.
Regards,
Reinoud
--IJpNTDwzlM2Ie8A6
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (NetBSD)
iQEVAwUBQ8L3YYKcNwBDyKpoAQLiTwf/fRT6ig2VG8bUx44ly3NbGYDPjcToEcz0
KPdt8ehVOTUHP7ODvq/eubM1d5Mb+VMUtzAl/Wedtlqru59bk7n9UBlp7L4MlFQH
zB8/k23RMQjio7P0CFKOngrKTI8VwlpZwFx3FVgu0veruxE+eR9rWqLwYRvNmvlW
WwCihv3EyV4Vbn2OIezs6nF6K1Fm1ql/yFAIb6fjucCCa6IMGNlGuXyVgats/rp7
TfVZ1Eyf0dKk/Fwx1fBcPj+95oIbKX+zO9M0vvsOZMiGfrcofBAP5SXB0qH1x/1q
tS0v0ISNSodUMMROu13FPRpsHXg/0n9d4W83dSAeWXGX9gjYsArYOw==
=hTEa
-----END PGP SIGNATURE-----
--IJpNTDwzlM2Ie8A6--