I meet a problem

Artem Bityutskiy dedekind1 at gmail.com
Mon Apr 4 03:35:53 EDT 2011


Hi,

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

Yes, I also saw this recently. I will look at this as soon as I can, and
will keep you posted. I think this is most probably false alarm and a
bug in the debugging code itself. So for now just hack your UBIFS and
disable this debugging check, e.g., like this:

diff --git a/fs/ubifs/debug.c b/fs/ubifs/debug.c
index c04efa8..1cc760b 100644
--- a/fs/ubifs/debug.c
+++ b/fs/ubifs/debug.c
@@ -995,6 +995,8 @@ int dbg_check_space_info(struct ubifs_info *c)
        struct ubifs_lp_stats lst;
        long long avail, free;
 
+       return 0; /* Temporary work-around hack */
+
        spin_lock(&c->space_lock);
        avail = ubifs_calc_available(c, c->min_idx_lebs);
        spin_unlock(&c->space_lock);


> UBIFS: saved lprops statistics dump
> UBIFS: current lprops statistics dump
> UBIFS assert failed in dbg_dump_budg at 613 (pid 11300)
> [<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

And this oops is a bug in the dumping code, I'll take a look at this as
well.

-- 
Best Regards,
Artem Bityutskiy (Артём Битюцкий)




More information about the linux-mtd mailing list