diff options
author | Oleg Drokin <green@linuxhacker.ru> | 2015-05-21 15:31:54 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-05-31 10:50:18 +0900 |
commit | 070c29ca79ef5a3ba753053928371b257064b15f (patch) | |
tree | b00f1d184d568a1b9b1aed7a511e098dd6ece0a1 | |
parent | d36f2b0ba87ef5ad41a2f02e941b8f8897f6c2a5 (diff) |
staging/lustre/llite: move /proc/fs/lustre/llite/xattr_cache to sysfs
Move xattr_cache file from /proc/fs/lustre/llite/*
to /sys/fs/lustre/llite/*/
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/lustre/lustre/llite/lproc_llite.c | 33 | ||||
-rw-r--r-- | drivers/staging/lustre/sysfs-fs-lustre | 7 |
2 files changed, 24 insertions, 16 deletions
diff --git a/drivers/staging/lustre/lustre/llite/lproc_llite.c b/drivers/staging/lustre/lustre/llite/lproc_llite.c index ced00769ab94..49fbecc40cac 100644 --- a/drivers/staging/lustre/lustre/llite/lproc_llite.c +++ b/drivers/staging/lustre/lustre/llite/lproc_llite.c @@ -777,26 +777,27 @@ static int ll_sbi_flags_seq_show(struct seq_file *m, void *v) } LPROC_SEQ_FOPS_RO(ll_sbi_flags); -static int ll_xattr_cache_seq_show(struct seq_file *m, void *v) +static ssize_t xattr_cache_show(struct kobject *kobj, + struct attribute *attr, + char *buf) { - struct super_block *sb = m->private; - struct ll_sb_info *sbi = ll_s2sbi(sb); - - seq_printf(m, "%u\n", sbi->ll_xattr_cache_enabled); + struct ll_sb_info *sbi = container_of(kobj, struct ll_sb_info, + ll_kobj); - return 0; + return sprintf(buf, "%u\n", sbi->ll_xattr_cache_enabled); } -static ssize_t ll_xattr_cache_seq_write(struct file *file, - const char __user *buffer, - size_t count, loff_t *off) +static ssize_t xattr_cache_store(struct kobject *kobj, + struct attribute *attr, + const char *buffer, + size_t count) { - struct seq_file *seq = file->private_data; - struct super_block *sb = seq->private; - struct ll_sb_info *sbi = ll_s2sbi(sb); - int val, rc; + struct ll_sb_info *sbi = container_of(kobj, struct ll_sb_info, + ll_kobj); + int rc; + unsigned long val; - rc = lprocfs_write_helper(buffer, count, &val); + rc = kstrtoul(buffer, 10, &val); if (rc) return rc; @@ -810,7 +811,7 @@ static ssize_t ll_xattr_cache_seq_write(struct file *file, return count; } -LPROC_SEQ_FOPS(ll_xattr_cache); +LUSTRE_RW_ATTR(xattr_cache); static struct lprocfs_vars lprocfs_llite_obd_vars[] = { /* { "mntpt_path", ll_rd_path, 0, 0 }, */ @@ -819,7 +820,6 @@ static struct lprocfs_vars lprocfs_llite_obd_vars[] = { { "max_cached_mb", &ll_max_cached_mb_fops, NULL }, { "statahead_stats", &ll_statahead_stats_fops, NULL, 0 }, { "sbi_flags", &ll_sbi_flags_fops, NULL, 0 }, - { "xattr_cache", &ll_xattr_cache_fops, NULL, 0 }, { NULL } }; @@ -847,6 +847,7 @@ static struct attribute *llite_attrs[] = { &lustre_attr_lazystatfs.attr, &lustre_attr_max_easize.attr, &lustre_attr_default_easize.attr, + &lustre_attr_xattr_cache.attr, NULL, }; diff --git a/drivers/staging/lustre/sysfs-fs-lustre b/drivers/staging/lustre/sysfs-fs-lustre index bf3f82a79a11..ec4ae4726cdc 100644 --- a/drivers/staging/lustre/sysfs-fs-lustre +++ b/drivers/staging/lustre/sysfs-fs-lustre @@ -183,3 +183,10 @@ Contact: "Oleg Drokin" <oleg.drokin@intel.com> Description: Shows maximum observed file striping data seen by this filesystem client instance. + +What: /sys/fs/lustre/llite/<fsname>-<uuid>/xattr_cache +Date: May 2015 +Contact: "Oleg Drokin" <oleg.drokin@intel.com> +Description: + Controls extended attributes client-side cache. + 1 to enable, 0 to disable. |