I meet a problem
Artem Bityutskiy
dedekind1 at gmail.com
Mon Apr 4 10:34:14 EDT 2011
On Sat, 2011-04-02 at 02:20 +0000, Caizhiyong wrote:
> write disk 15091695 file 40023umount: tmpfs busy - remounted read-only
> write disk 15131718 file 40076UBIFS error (pid 11300):
> dbg_check_space_info: free space changed from 424404213 to 424396165
Too bad you did not send the dmesg output, as it is described in the
"how to send UBIFS bug report" here:
http://www.linux-mtd.infradead.org/doc/ubifs.html#L_how_send_bugreport
Anyway, yes, I confirm that this very first error in
'dbg_check_space_info()' is false alarm. I'll send a fix for this soon.
But my fix is against the current ubifs-2.6.git tree, although you
should be able to port it to 2.6.38 tree.
> UBIFS: saved lprops statistics dump
> UBIFS: current lprops statistics dump
> UBIFS assert failed in dbg_dump_budg at 613 (pid 11300)
However this is _very_ strange. This assertion is:
ubifs_assert(spin_is_locked(&c->space_lock));
and if I look at 'dbg_check_space_info()' I see that it must be locked:
spin_lock(&c->space_lock);
dbg_dump_budg(c);
spin_unlock(&c->space_lock);
So the second assertion and the subsequent oopses are really really
strange. Could you try to emulate the error case in
'dbg_check_space_info()' and check how the subsequent assertion may
happen?
> [<c00284bc>] (unwind_backtrace+0x0/0xfc) from [<c018a770>] (dbg_dump_budg+0x220/0x2dc)
> [<c018a770>] (dbg_dump_budg+0x220/0x2dc) from [<c018a8dc>] (dbg_check_space_info+0xb0/0xc0)
> [<c018a8dc>] (dbg_check_space_info+0xb0/0xc0) from [<c015b4ac>] (ubifs_remount_fs+0x428/0x8dc)
> [<c015b4ac>] (ubifs_remount_fs+0x428/0x8dc) from [<c00949b0>] (do_remount_sb+0x6c/0x11c)
> [<c00949b0>] (do_remount_sb+0x6c/0x11c) from [<c00aae00>] (do_mount+0x468/0x708)
> [<c00aae00>] (do_mount+0x468/0x708) from [<c00ab124>] (sys_mount+0x84/0xc4)
> [<c00ab124>] (sys_mount+0x84/0xc4) from [<c0021ec0>] (ret_fast_syscall+0x0/0x30)
> [<c00284bc>] (unwind_backtrace+0x0/0xfc) from [<c018a8e0>] (dbg_check_space_info+0xb4/0xc0)
> [<c018a8e0>] (dbg_check_space_info+0xb4/0xc0) from [<c015b4ac>] (ubifs_remount_fs+0x428/0x8dc)
> [<c015b4ac>] (ubifs_remount_fs+0x428/0x8dc) from [<c00949b0>] (do_remount_sb+0x6c/0x11c)
> [<c00949b0>] (do_remount_sb+0x6c/0x11c) from [<c00aae00>] (do_mount+0x468/0x708)
> [<c00aae00>] (do_mount+0x468/0x708) from [<c00ab124>] (sys_mount+0x84/0xc4)
> [<c00ab124>] (sys_mount+0x84/0xc4) from [<c0021ec0>] (ret_fast_syscall+0x0/0x30)
> UBIFS warning (pid 11300): ubifs_ro_mode: switched to read-only mode, error -22
> [<c00284bc>] (unwind_backtrace+0x0/0xfc) from [<c015b4bc>] (ubifs_remount_fs+0x438/0x8dc)
> [<c015b4bc>] (ubifs_remount_fs+0x438/0x8dc) from [<c00949b0>] (do_remount_sb+0x6c/0x11c)
> [<c00949b0>] (do_remount_sb+0x6c/0x11c) from [<c00aae00>] (do_mount+0x468/0x708)
> [<c00aae00>] (do_mount+0x468/0x708) from [<c00ab124>] (sys_mount+0x84/0xc4)
> [<c00ab124>] (sys_mount+0x84/0xc4) from [<c0021ec0>] (ret_fast_syscall+0x0/0x30)
> Unable to handle kernel NULL pointer dereference at virtual address 00000124
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
More information about the linux-mtd
mailing list