Messages in this thread | | | Date | Fri, 21 Mar 2003 12:39:19 -0800 | From | Andrew Morton <> | Subject | Re: [BUG] 2.5.65-mm3 kernel BUG at fs/ext3/super.c:1795! |
| |
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/
| |