UBI: do not change file pointer while updating
Since we do not change semantics of seek(), changing the file pointer while updating does not make much sense. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
This commit is contained in:
@@ -368,6 +368,7 @@ static ssize_t vol_cdev_write(struct file *file, const char __user *buf,
|
|||||||
*/
|
*/
|
||||||
count = err;
|
count = err;
|
||||||
|
|
||||||
|
vol->updating = 0;
|
||||||
err = ubi_check_volume(ubi, vol->vol_id);
|
err = ubi_check_volume(ubi, vol->vol_id);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return err;
|
return err;
|
||||||
@@ -382,7 +383,6 @@ static ssize_t vol_cdev_write(struct file *file, const char __user *buf,
|
|||||||
revoke_exclusive(desc, UBI_READWRITE);
|
revoke_exclusive(desc, UBI_READWRITE);
|
||||||
}
|
}
|
||||||
|
|
||||||
*offp += count;
|
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -430,8 +430,6 @@ static int vol_cdev_ioctl(struct inode *inode, struct file *file,
|
|||||||
err = ubi_start_update(ubi, vol->vol_id, bytes);
|
err = ubi_start_update(ubi, vol->vol_id, bytes);
|
||||||
if (bytes == 0)
|
if (bytes == 0)
|
||||||
revoke_exclusive(desc, UBI_READWRITE);
|
revoke_exclusive(desc, UBI_READWRITE);
|
||||||
|
|
||||||
file->f_pos = 0;
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -343,7 +343,6 @@ int ubi_more_update_data(struct ubi_device *ubi, int vol_id,
|
|||||||
if (err == 0) {
|
if (err == 0) {
|
||||||
err = to_write;
|
err = to_write;
|
||||||
vfree(vol->upd_buf);
|
vfree(vol->upd_buf);
|
||||||
vol->updating = 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user