ll_xattr_cache_set:1, /* already set to 0/1 */
ll_client_common_fill_super_succeeded:1,
ll_checksum_set:1,
- ll_inode_cache_enabled:1;
+ ll_inode_cache_enabled:1,
+ ll_enable_statahead_fname:1;
struct lustre_client_ocd ll_lco;
}
LUSTRE_RW_ATTR(stats_track_gid);
+static ssize_t enable_statahead_fname_show(struct kobject *kobj,
+ struct attribute *attr,
+ char *buf)
+{
+ struct ll_sb_info *sbi = container_of(kobj, struct ll_sb_info,
+ ll_kset.kobj);
+
+ return snprintf(buf, PAGE_SIZE, "%u\n", sbi->ll_enable_statahead_fname);
+}
+
+static ssize_t enable_statahead_fname_store(struct kobject *kobj,
+ struct attribute *attr,
+ const char *buffer,
+ size_t count)
+{
+ struct ll_sb_info *sbi = container_of(kobj, struct ll_sb_info,
+ ll_kset.kobj);
+ bool val;
+ int rc;
+
+ rc = kstrtobool(buffer, &val);
+ if (rc)
+ return rc;
+
+ sbi->ll_enable_statahead_fname = val;
+
+ return count;
+}
+LUSTRE_RW_ATTR(enable_statahead_fname);
+
static ssize_t statahead_running_max_show(struct kobject *kobj,
struct attribute *attr,
char *buf)
&lustre_attr_stats_track_pid.attr,
&lustre_attr_stats_track_ppid.attr,
&lustre_attr_stats_track_gid.attr,
+ &lustre_attr_enable_statahead_fname.attr,
&lustre_attr_statahead_running_max.attr,
&lustre_attr_statahead_batch_max.attr,
&lustre_attr_statahead_max.attr,