mm: kfence: fix using kfence_metadata without initialization in show_object()
[sfrench/cifs-2.6.git] / mm / kfence / core.c
index 5349c37a5dac9fc83f9a1eec0f12a9f6c6ab4b48..79c94ee55f97b6d5f803ea290ff8e6c4491aa04a 100644 (file)
@@ -726,10 +726,14 @@ static const struct seq_operations objects_sops = {
 };
 DEFINE_SEQ_ATTRIBUTE(objects);
 
-static int __init kfence_debugfs_init(void)
+static int kfence_debugfs_init(void)
 {
-       struct dentry *kfence_dir = debugfs_create_dir("kfence", NULL);
+       struct dentry *kfence_dir;
 
+       if (!READ_ONCE(kfence_enabled))
+               return 0;
+
+       kfence_dir = debugfs_create_dir("kfence", NULL);
        debugfs_create_file("stats", 0444, kfence_dir, NULL, &stats_fops);
        debugfs_create_file("objects", 0400, kfence_dir, NULL, &objects_fops);
        return 0;
@@ -883,6 +887,8 @@ static int kfence_init_late(void)
        }
 
        kfence_init_enable();
+       kfence_debugfs_init();
+
        return 0;
 }