mirror of
https://github.com/torvalds/linux.git
synced 2026-09-12 04:23:03 +02:00
ceph: apply nearfull_sync option on remount
ceph_parse_mount_param() stores nearfull_sync / nonearfull_sync on the
temporary fs_context options, but ceph_reconfigure_fc() never copied
CEPH_MOUNT_OPT_NEARFULL_SYNC onto the live mount. Remount therefore
succeeded while writes and /proc/mounts kept the original-mount flag.
Apply the flag the same way as ASYNC_DIROPS and SPARSEREAD so remount
can enable or disable NEARFULL IOCB_DSYNC promotion.
Fixes: c7a12c20bfba ("ceph: make nearfull sync writes opt-in")
Signed-off-by: Alex Markuze <amarkuze@redhat.com>
Reviewed-by: Xiubo Li <xiubo.li@clyso.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
parent
f75987e543
commit
dc173b3741
|
|
@ -1420,6 +1420,11 @@ static int ceph_reconfigure_fc(struct fs_context *fc)
|
|||
else
|
||||
ceph_clear_mount_opt(fsc, SPARSEREAD);
|
||||
|
||||
if (fsopt->flags & CEPH_MOUNT_OPT_NEARFULL_SYNC)
|
||||
ceph_set_mount_opt(fsc, NEARFULL_SYNC);
|
||||
else
|
||||
ceph_clear_mount_opt(fsc, NEARFULL_SYNC);
|
||||
|
||||
if (strcmp_null(fsc->mount_options->mon_addr, fsopt->mon_addr)) {
|
||||
kfree(fsc->mount_options->mon_addr);
|
||||
fsc->mount_options->mon_addr = fsopt->mon_addr;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user