mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 03:36:19 +00:00
UBIFS: fix assertion warning
When debugging is enabled and an unclean file-system is mounter, the following assertion is triggered: UBIFS assert failed in ubifs_tnc_start_commit at 805 (pid 1081) Call Trace: [cfaffbd0] [c0006cf8] show_stack+0x44/0x16c (unreliable) [cfaffc10] [c011b738] ubifs_tnc_start_commit+0xbb8/0xd18 [cfaffc90] [c0112670] do_commit+0x150/0xa44 [cfaffd10] [c0125234] ubifs_rcvry_gc_commit+0xd8/0x544 [cfaffd60] [c0100e9c] ubifs_fill_super+0xe78/0x15f8 [cfaffdf0] [c0102118] ubifs_get_sb+0x20c/0x320 [cfaffe70] [c007f764] vfs_kern_mount+0x58/0xe0 [cfaffe90] [c007f83c] do_kern_mount+0x40/0xf8 [cfaffeb0] [c0095c24] do_mount+0x550/0x758 [cfafff10] [c0095ebc] sys_mount+0x90/0xe0 [cfafff40] [c000ed4c] ret_from_syscall+0x0/0x3c The reason is that we initialize 'c->min_leb_idx' early, and do not re-calculate it after journal replay. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
This commit is contained in:
parent
681947d2fa
commit
1fb8bd01ed
1 changed files with 3 additions and 0 deletions
|
@ -1287,6 +1287,9 @@ static int mount_ubifs(struct ubifs_info *c)
|
|||
if (err)
|
||||
goto out_journal;
|
||||
|
||||
/* Calculate 'min_idx_lebs' after journal replay */
|
||||
c->min_idx_lebs = ubifs_calc_min_idx_lebs(c);
|
||||
|
||||
err = ubifs_mount_orphans(c, c->need_recovery, mounted_read_only);
|
||||
if (err)
|
||||
goto out_orphans;
|
||||
|
|
Loading…
Reference in a new issue