tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Repeated ffs_newvnode panic (dup alloc) on one inode
Hi,
I had repeated kernel panics (10.99.12 if that matters) on a
supposedly dup inode (on a raidfraime device, if that matters):
panic("%s: dup alloc ino=%" PRId64 [...]")
(https://nxr.netbsd.org/xref/src/sys/ufs/ffs/ffs_vfsops.c#2242 )
With that backtrace:
panic() at vprintf
ffs_newvnode() at ffs_newvnode+0x441
vcache_new() at vcache_new+0x90
ufs_mkdir() at ufs_mkdir+0x6f
VOP_MKDIR() at VOP_MKDIR+0x40
nfsrv_mkdir() at nfsrv_mkdir+0x85c
The kernel would always panic with the same "NNN" inode number, as
soon as something would be writing to the filesystem in
question. After some lengthy 'find -inum' I did confirm that the inode
NNN didn't exist on the filesystem. However, I found some ... NNN-3,
NNN-2, NNN-1 inodes, and touching a file in that directory also
triggered the panic with again the NNN inode number.
Since I needed the filesystem to be operational I moved around those
files a bit until new inodes would be created far away from NNN and
this mitigated the issue so far.
Howver, I was wondering what could be the cause of this (dirty sector
on a disk after a crash?) and how to make sure this won't happen again
by examining the disk? I'm not sure to understand the "if
(ip->i_mode)" that triggers the panic. Does this mean that data read
on the disk is not 0-initialized?
Thanks for any hints!
Cheers,
Anthony
Home |
Main Index |
Thread Index |
Old Index