diff options
author | Venky Shankar <vshankar@redhat.com> | 2021-07-14 13:05:53 +0300 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2022-01-13 15:40:06 +0300 |
commit | 2167f2cc686a97911a0b06ba9c97cec304b7c432 (patch) | |
tree | 784441323161f36855f46df1bb0a7811cf9cc1f7 | |
parent | 7b19b4db5add8d9f50e854907a82a10ba4d27c42 (diff) | |
download | linux-2167f2cc686a97911a0b06ba9c97cec304b7c432.tar.xz |
ceph: record updated mon_addr on remount
Note that the new monitors are just shown in /proc/mounts.
Ceph does not (re)connect to new monitors yet.
[ jlayton: s/printk\(KERN_NOTICE/pr_notice(/
s/strcmp/strcmp_null/ ]
Signed-off-by: Venky Shankar <vshankar@redhat.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
-rw-r--r-- | fs/ceph/super.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c index e2c40d055711..31b5786cd98f 100644 --- a/fs/ceph/super.c +++ b/fs/ceph/super.c @@ -1277,6 +1277,13 @@ static int ceph_reconfigure_fc(struct fs_context *fc) else ceph_clear_mount_opt(fsc, ASYNC_DIROPS); + 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; + fsopt->mon_addr = NULL; + pr_notice("ceph: monitor addresses recorded, but not used for reconnection"); + } + sync_filesystem(fc->root->d_sb); return 0; } |