Subject: Re: PR/32462 CVS commit: src/sys
To: None <yamt@netbsd.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org,>
From: Reinoud Zandijk <reinoud@netbsd.org>
List: netbsd-bugs
Date: 01/06/2006 13:10:02
The following reply was made to PR kern/32462; it has been noted by GNATS.

From: Reinoud Zandijk <reinoud@netbsd.org>
To: gnats-bugs@netbsd.org
Cc: yamt@netbsd.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: PR/32462 CVS commit: src/sys
Date: Fri, 6 Jan 2006 14:05:29 +0100

 Dear Takashi,
 
 On Fri, Jan 06, 2006 at 09:25:01AM +0000, YAMAMOTO Takashi wrote:
 >  Modified Files:
 >  	src/sys/arch/sparc/dev: fd.c
 >  	src/sys/dev/isa: fd.c
 >  	src/sys/dev/raidframe: rf_diskqueue.c
 >  	src/sys/ufs/lfs: lfs_bio.c
 >  
 >  Log Message:
 >  initialize necessary members of struct buf.  PR/32462 from Reinoud Zandijk.
 
 Well euhm.. that was not enough :( mounting goes ok now but i get another 
 panic:
 
 panic: pool_get: biopl: page empty
 
 	pool_get + 0x251   (i386)
 	getiobf1
 	getiobuf
 	lfs_newbuf
 	lfs_initseg
 	lfs_seglock
 	lfs_valloc
 	ufs_makeinode
 ....
 	lfs_create
 ....
 
 Running with DIAGNOSTIC+DEBUG+LOCKDEBUG, the kernel immediately crashes 
 when reading when it starts syslogd:
 
 pool_get: bufpl: curpage NULL, nitems 7
 panic: pool_get: nitems inconsistent
 
 trace:
 	pool_get +0x1a5 (i386)
 	getnewbuf
 	getblk
 	bio_doread
 	bread
 	ffs_vget
 	ufs_lookup
 	VOP_LOOKUP
 	lookup
 	namei
 	sys_access
 	...
 
 So somthing is definatively wrong in the pool code :-/ also the `bp->b_vp = 
 NULL;' would help on other places.
 
 Happy hacking :)
 Reinoud