mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-10 06:49:29 -04:00
UBIFS: switch to RO mode after synchronizing
In 'ubifs_garbage_collect()' on error path, we first switch to R/O mode, and then synchronize write-buffers (to make sure no data are lost). But the GC write-buffer synchronization will fail, because we are already in R/O mode. This patch re-orders this and makes sure we first synchronize the write-buffer, and then switch to R/O mode. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
This commit is contained in:
@@ -774,8 +774,8 @@ int ubifs_garbage_collect(struct ubifs_info *c, int anyway)
|
||||
out:
|
||||
ubifs_assert(ret < 0);
|
||||
ubifs_assert(ret != -ENOSPC && ret != -EAGAIN);
|
||||
ubifs_ro_mode(c, ret);
|
||||
ubifs_wbuf_sync_nolock(wbuf);
|
||||
ubifs_ro_mode(c, ret);
|
||||
mutex_unlock(&wbuf->io_mutex);
|
||||
ubifs_return_leb(c, lp.lnum);
|
||||
return ret;
|
||||
|
||||
Reference in New Issue
Block a user