Whamcloud - gitweb
LU-15252 mdc: add client tunable to disable LSOM update
[fs/lustre-release.git] / lustre / mdc / lproc_mdc.c
index e48129d..506f06f 100644 (file)
@@ -571,6 +571,34 @@ static ssize_t mdc_dom_min_repsize_seq_write(struct file *file,
 }
 LPROC_SEQ_FOPS(mdc_dom_min_repsize);
 
+static int mdc_lsom_seq_show(struct seq_file *m, void *v)
+{
+       struct obd_device *dev = m->private;
+
+       seq_printf(m, "%s\n", dev->u.cli.cl_lsom_update ? "On" : "Off");
+
+       return 0;
+}
+
+static ssize_t mdc_lsom_seq_write(struct file *file,
+                                 const char __user *buffer,
+                                 size_t count, loff_t *off)
+{
+       struct obd_device *dev;
+       bool val;
+       int rc;
+
+       dev =  ((struct seq_file *)file->private_data)->private;
+       rc = kstrtobool_from_user(buffer, count, &val);
+       if (rc)
+               return rc;
+
+       dev->u.cli.cl_lsom_update = val;
+       return count;
+}
+LPROC_SEQ_FOPS(mdc_lsom);
+
+
 LPROC_SEQ_FOPS_RO_TYPE(mdc, connect_flags);
 LPROC_SEQ_FOPS_RO_TYPE(mdc, server_uuid);
 LPROC_SEQ_FOPS_RO_TYPE(mdc, timeouts);
@@ -608,6 +636,8 @@ struct lprocfs_vars lprocfs_mdc_obd_vars[] = {
          .fops =       &mdc_stats_fops                 },
        { .name =       "mdc_dom_min_repsize",
          .fops =       &mdc_dom_min_repsize_fops       },
+       { .name =       "mdc_lsom",
+         .fops =       &mdc_lsom_fops                  },
        { NULL }
 };