Re: [BUG] 2.5.65-mm3 kernel BUG at fs/ext3/super.c:1795!
Andrew Morton (akpm@digeo.com)
Fri, 21 Mar 2003 12:39:19 -0800
Alexander Hoogerhuis <alexh@ihatent.com> wrote:
>
> Andrew Morton <akpm@digeo.com> writes:
> >
> > [SNIP]
> >
> 
> Disk I/O on my machine froze up during very light work after a few
> hours, luckily I had a window open on another machine so I could do a
> simple capture and save the info:
> 
> kernel BUG at fs/ext3/super.c:1795!
> invalid operand: 0000 [#1]
> CPU:    0
> EIP:    0060:[<c018b522>]    Not tainted VLI
> EFLAGS: 00010246
> EIP is at ext3_write_super+0x36/0x94
> eax: 00000000   ebx: c8834000   ecx: efb5904c   edx: efb59000
> esi: efb59000   edi: c8834000   ebp: c8835ecc   esp: c8835ec0
> ds: 007b   es: 007b   ss: 0068
> Process pdflush (pid: 7853, threadinfo=c8834000 task=ed0a5880)
> Stack: c8835ee4 00000287 efb5904c c8835ee4 c0153148 efb59000 00000077 51eb851f
>        c8835fcc c8835fa4 c0137fd0 c03892fc 007b9f47 007b168f 00000000 00000000
>        c8835ef4 00000000 00000001 00000000 00000001 00000000 00000053 00000000
> Call Trace:
>  [<c0153148>] sync_supers+0xde/0xea
>  [<c0137fd0>] wb_kupdate+0x68/0x161
>  [<c0118985>] schedule+0x1a4/0x3ac
>  [<c01386e8>] __pdflush+0xdc/0x1d8
>  [<c01387e4>] pdflush+0x0/0x15
>  [<c01387f5>] pdflush+0x11/0x15
>  [<c0137f68>] wb_kupdate+0x0/0x161
>  [<c0108e69>] kernel_thread_helper+0x5/0xb
How on earth did you do that?
sync_supers() does lock_super, then calls ext3_write_super.
ext3_write_super() does a down_trylock() on sb->s_lock and goes BUG
if it acquired the lock.
So you've effectively done this:
	down(&sem);
	if (down_trylock(&sem))
		BUG();
This can only be a random memory scribble, a hardware bug or a
preempt-related bug in down_trylock().
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/