瀏覽代碼

x86/intel_rdt: Propagate error in rdt_mount() properly

gcc complains:
"warning: ‘dentry’ may be used uninitialized in this function"

The error exit path in rdt_mount(), which deals with a failure in
rdtgroup_create_info_dir(), does not set the error code in dentry and
returns the uninitialized dentry value.

Add the missing error propagation.

[tglx: Massaged changelog ]
Fixes: 4e978d06dedb ("x86/intel_rdt: Add "info" files to resctrl file system")
Signed-off-by: Shaohua Li <shli@fb.com>
Cc: fenghua.yu@intel.com
Cc: tony.luck@intel.com
Link: http://lkml.kernel.org/r/a56a556f6768dc12cadbf97f49e000189056f90e.1478207143.git.shli@fb.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Shaohua Li 8 年之前
父節點
當前提交
7bff0af510
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      arch/x86/kernel/cpu/intel_rdt_rdtgroup.c

+ 3 - 1
arch/x86/kernel/cpu/intel_rdt_rdtgroup.c

@@ -691,8 +691,10 @@ static struct dentry *rdt_mount(struct file_system_type *fs_type,
 	closid_init();
 
 	ret = rdtgroup_create_info_dir(rdtgroup_default.kn);
-	if (ret)
+	if (ret) {
+		dentry = ERR_PTR(ret);
 		goto out_cdp;
+	}
 
 	dentry = kernfs_mount(fs_type, flags, rdt_root,
 			      RDTGROUP_SUPER_MAGIC, NULL);