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:
Родитель
2bfc96a127
Коммит
5ffef88ffe
|
@ -774,8 +774,8 @@ out_unlock:
|
|||
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;
|
||||
|
|
Загрузка…
Ссылка в новой задаче