mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-18 23:54:26 +08:00
UBIFS: fix replay regression
Commit "d51f17e UBIFS: simplify reply code a bit" introduces a bug with the following symptoms: UBIFS error (pid 1): replay_log_leb: first CS node at LEB 3:0 has wrong commit number 0 expected 1 The issue is that we start replaying the log from UBIFS_LOG_LNUM instead of c->lhead_lnum. This patch fixes that. Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
This commit is contained in:
parent
11e3be0be2
commit
c212f4020d
@ -1026,7 +1026,6 @@ int ubifs_replay_journal(struct ubifs_info *c)
|
|||||||
c->replaying = 1;
|
c->replaying = 1;
|
||||||
lnum = c->ltail_lnum = c->lhead_lnum;
|
lnum = c->ltail_lnum = c->lhead_lnum;
|
||||||
|
|
||||||
lnum = UBIFS_LOG_LNUM;
|
|
||||||
do {
|
do {
|
||||||
err = replay_log_leb(c, lnum, 0, c->sbuf);
|
err = replay_log_leb(c, lnum, 0, c->sbuf);
|
||||||
if (err == 1)
|
if (err == 1)
|
||||||
@ -1035,7 +1034,7 @@ int ubifs_replay_journal(struct ubifs_info *c)
|
|||||||
if (err)
|
if (err)
|
||||||
goto out;
|
goto out;
|
||||||
lnum = ubifs_next_log_lnum(c, lnum);
|
lnum = ubifs_next_log_lnum(c, lnum);
|
||||||
} while (lnum != UBIFS_LOG_LNUM);
|
} while (lnum != c->ltail_lnum);
|
||||||
|
|
||||||
err = replay_buds(c);
|
err = replay_buds(c);
|
||||||
if (err)
|
if (err)
|
||||||
|
Loading…
Reference in New Issue
Block a user