Jeff Layton <jlayton@xxxxxxxxxx> writes: > This has been behaving reasonably well in testing, and enabling this > offers significant performance benefits. Enable async dirops by default > in the kclient going forward, and change show_options to add "wsync" > when they are disabled. Sounds good! Maybe it's worth adding this option to the mount options listed in Documentation/filesystems/ceph.rst (although it's quite possible that other mount options are already missing there). Cheers, -- Luis > > Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx> > --- > fs/ceph/super.c | 4 ++-- > fs/ceph/super.h | 5 +++-- > 2 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/fs/ceph/super.c b/fs/ceph/super.c > index 9b1b7f4cfdd4..884e2ffabfaf 100644 > --- a/fs/ceph/super.c > +++ b/fs/ceph/super.c > @@ -577,8 +577,8 @@ static int ceph_show_options(struct seq_file *m, struct dentry *root) > if (fsopt->flags & CEPH_MOUNT_OPT_CLEANRECOVER) > seq_show_option(m, "recover_session", "clean"); > > - if (fsopt->flags & CEPH_MOUNT_OPT_ASYNC_DIROPS) > - seq_puts(m, ",nowsync"); > + if (!(fsopt->flags & CEPH_MOUNT_OPT_ASYNC_DIROPS)) > + seq_puts(m, ",wsync"); > > if (fsopt->wsize != CEPH_MAX_WRITE_SIZE) > seq_printf(m, ",wsize=%u", fsopt->wsize); > diff --git a/fs/ceph/super.h b/fs/ceph/super.h > index 13b02887b085..8ee2745f6257 100644 > --- a/fs/ceph/super.h > +++ b/fs/ceph/super.h > @@ -46,8 +46,9 @@ > #define CEPH_MOUNT_OPT_ASYNC_DIROPS (1<<15) /* allow async directory ops */ > > #define CEPH_MOUNT_OPT_DEFAULT \ > - (CEPH_MOUNT_OPT_DCACHE | \ > - CEPH_MOUNT_OPT_NOCOPYFROM) > + (CEPH_MOUNT_OPT_DCACHE | \ > + CEPH_MOUNT_OPT_NOCOPYFROM | \ > + CEPH_MOUNT_OPT_ASYNC_DIROPS) > > #define ceph_set_mount_opt(fsc, opt) \ > (fsc)->mount_options->flags |= CEPH_MOUNT_OPT_##opt > -- > > 2.29.2 >