Re: [Bugme-new] [Bug 7495] New: Kernel periodically hangs.

From: Neil Brown
Date: Mon Nov 13 2006 - 01:44:33 EST


On Saturday November 11, akpm@xxxxxxxx wrote:
> On Sat, 11 Nov 2006 03:29:32 -0800
> bugme-daemon@xxxxxxxxxxxxxxxxxxx wrote:
>
> > http://bugzilla.kernel.org/show_bug.cgi?id=7495
> >
> > Summary: Kernel periodically hangs.
> > Kernel Version: Linux version 2.6.18.2 (root@pub) (gcc version 3.4.6)
> > #13 SMP Fr
> > Status: NEW
> > Severity: blocking
> > Owner: other_other@xxxxxxxxxxxxxxxxxxxx
> > Submitter: alex@xxxxxxxxxx

So getting back to the main issue in this bug report.....


> >
> >
> > [42587.676000] BUG: unable to handle kernel NULL pointer dereference at
> > virtual address 0000003c

it would appear that in:
if (inode->i_sb && inode->i_sb->s_op->clear_inode)
inode->i_sb->s_op->clear_inode(inode);

inode->i_sb->s_op is NULL. This is unfortunate :-)
alloc_super initialises s_op to '&default_op' and it isn't cleared on
unmount, so the implication seems to be that i_sb has been freed and
the memory has been reused. This tends to suggest that
generic_shutdown_super isn't releasing all inodes before the
superblock gets destroyed.

I cannot see how this could be happening yet, but it might be helpful
to compile with CONFIG_DEBUG_SLAB and maybe even
CONFIG_DEBUG_PAGEALLOC.
That might make the problem trigger earlier and so be easier to track.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/