return err;
}
- if (bytes == 0) {
- err = ubi_wl_flush(ubi);
- if (err)
- return err;
+ err = ubi_wl_flush(ubi);
+ if (err)
+ return err;
+ if (bytes == 0) {
err = clear_update_marker(ubi, vol, 0);
if (err)
return err;
vol->ch_lnum = req->lnum;
vol->ch_dtype = req->dtype;
- vol->upd_buf = vmalloc(req->bytes);
+ vol->upd_buf = vmalloc(ALIGN((int)req->bytes, ubi->min_io_size));
if (!vol->upd_buf)
return -ENOMEM;