}
LUSTRE_RO_ATTR(client_type);
-static int ll_fstype_seq_show(struct seq_file *m, void *v)
+static ssize_t fstype_show(struct kobject *kobj, struct attribute *attr,
+ char *buf)
{
- struct super_block *sb = m->private;
- struct ll_sb_info *sbi = ll_s2sbi(sb);
+ struct ll_sb_info *sbi = container_of(kobj, struct ll_sb_info,
+ ll_kset.kobj);
- LASSERT(sb != NULL);
- seq_printf(m, "%s\n", sbi->ll_mnt.mnt->mnt_sb->s_type->name);
- return 0;
+ return sprintf(buf, "%s\n", sbi->ll_mnt.mnt->mnt_sb->s_type->name);
}
-LPROC_SEQ_FOPS_RO(ll_fstype);
+LUSTRE_RO_ATTR(fstype);
static int ll_sb_uuid_seq_show(struct seq_file *m, void *v)
{
struct lprocfs_vars lprocfs_llite_obd_vars[] = {
{ .name = "uuid",
.fops = &ll_sb_uuid_fops },
- { .name = "fstype",
- .fops = &ll_fstype_fops },
{ .name = "site",
.fops = &ll_site_stats_fops },
{ .name = "stat_blocksize",
&lustre_attr_filestotal.attr,
&lustre_attr_filesfree.attr,
&lustre_attr_client_type.attr,
+ &lustre_attr_fstype.attr,
&lustre_attr_statahead_running_max.attr,
NULL,
};