}
 LUSTRE_RW_ATTR(lazystatfs);
 
-static int ll_max_easize_seq_show(struct seq_file *m, void *v)
+static ssize_t max_easize_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_kobj);
        unsigned int ealen;
        int rc;
 
        if (rc)
                return rc;
 
-       seq_printf(m, "%u\n", ealen);
-       return 0;
+       return sprintf(buf, "%u\n", ealen);
 }
-LPROC_SEQ_FOPS_RO(ll_max_easize);
+LUSTRE_RO_ATTR(max_easize);
 
-static int ll_default_easize_seq_show(struct seq_file *m, void *v)
+static ssize_t default_easize_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_kobj);
        unsigned int ealen;
        int rc;
 
        if (rc)
                return rc;
 
-       seq_printf(m, "%u\n", ealen);
-       return 0;
+       return sprintf(buf, "%u\n", ealen);
 }
-LPROC_SEQ_FOPS_RO(ll_default_easize);
+LUSTRE_RO_ATTR(default_easize);
 
 static int ll_max_cookiesize_seq_show(struct seq_file *m, void *v)
 {
        /* { "filegroups",   lprocfs_rd_filegroups,  0, 0 }, */
        { "max_cached_mb",    &ll_max_cached_mb_fops, NULL },
        { "statahead_stats",  &ll_statahead_stats_fops, NULL, 0 },
-       { "max_easize",       &ll_max_easize_fops, NULL, 0 },
-       { "default_easize",   &ll_default_easize_fops, NULL, 0 },
        { "max_cookiesize",   &ll_max_cookiesize_fops, NULL, 0 },
        { "default_cookiesize", &ll_default_cookiesize_fops, NULL, 0 },
        { "sbi_flags",        &ll_sbi_flags_fops, NULL, 0 },
        &lustre_attr_statahead_max.attr,
        &lustre_attr_statahead_agl.attr,
        &lustre_attr_lazystatfs.attr,
+       &lustre_attr_max_easize.attr,
+       &lustre_attr_default_easize.attr,
        NULL,
 };
 
 
                Controls statfs(2) behaviour in the face of down servers.
                If 0, always wait for all servers to come online,
                if 1, ignote inactive servers.
+
+What:          /sys/fs/lustre/llite/<fsname>-<uuid>/max_easize
+Date:          May 2015
+Contact:       "Oleg Drokin" <oleg.drokin@intel.com>
+Description:
+               Shows maximum number of bytes file striping data could be
+               in current configuration of storage.
+
+What:          /sys/fs/lustre/llite/<fsname>-<uuid>/default_easize
+Date:          May 2015
+Contact:       "Oleg Drokin" <oleg.drokin@intel.com>
+Description:
+               Shows maximum observed file striping data seen by this
+               filesystem client instance.