summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQiuxu Zhuo <qiuxu.zhuo@intel.com>2018-11-16 15:34:44 +0800
committerBorislav Petkov <bp@suse.de>2018-11-16 11:17:24 +0100
commit85b9c8bfee67ed151c44861c71adc816fc1b46a9 (patch)
tree6cc7e28f4b288c558da73bb5cb3abd86ef430ab9
parente235dd43d8b0f0e036fc528504d7a129685fb572 (diff)
downloadlinux-85b9c8bfee67ed151c44861c71adc816fc1b46a9.tar.gz
linux-85b9c8bfee67ed151c44861c71adc816fc1b46a9.tar.bz2
linux-85b9c8bfee67ed151c44861c71adc816fc1b46a9.zip
EDAC, skx: Move debugfs node under EDAC's hierarchy
The debugfs node is /sys/kernel/debug/skx_edac_test. Rename it and move under EDAC debugfs root directory. Remove the unused 'skx_fake_addr' and remove the 'skx_test' on error. Co-developed-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com> Signed-off-by: Borislav Petkov <bp@suse.de> CC: Mauro Carvalho Chehab <mchehab@kernel.org> CC: arozansk@redhat.com CC: linux-edac <linux-edac@vger.kernel.org> Link: http://lkml.kernel.org/r/1542353684-13496-1-git-send-email-qiuxu.zhuo@intel.com
-rw-r--r--drivers/edac/skx_edac.c25
1 files changed, 12 insertions, 13 deletions
diff --git a/drivers/edac/skx_edac.c b/drivers/edac/skx_edac.c
index d8869f05c596..6d38701c1b2e 100644
--- a/drivers/edac/skx_edac.c
+++ b/drivers/edac/skx_edac.c
@@ -923,12 +923,11 @@ static bool skx_decode(struct decoded_addr *res)
#ifdef CONFIG_EDAC_DEBUG
/*
- * Debug feature. Make /sys/kernel/debug/skx_edac_test/addr.
- * Write an address to this file to exercise the address decode
- * logic in this driver.
+ * Debug feature.
+ * Exercise the address decode logic by writing an address to
+ * /sys/kernel/debug/edac/skx_test/addr.
*/
static struct dentry *skx_test;
-static u64 skx_fake_addr;
static int debugfs_u64_set(void *data, u64 val)
{
@@ -939,19 +938,19 @@ static int debugfs_u64_set(void *data, u64 val)
return 0;
}
-
DEFINE_SIMPLE_ATTRIBUTE(fops_u64_wo, NULL, debugfs_u64_set, "%llu\n");
-static struct dentry *mydebugfs_create(const char *name, umode_t mode,
- struct dentry *parent, u64 *value)
-{
- return debugfs_create_file(name, mode, parent, value, &fops_u64_wo);
-}
-
static void setup_skx_debug(void)
{
- skx_test = debugfs_create_dir("skx_edac_test", NULL);
- mydebugfs_create("addr", S_IWUSR, skx_test, &skx_fake_addr);
+ skx_test = edac_debugfs_create_dir("skx_test");
+ if (!skx_test)
+ return;
+
+ if (!edac_debugfs_create_file("addr", 0200, skx_test,
+ NULL, &fops_u64_wo)) {
+ debugfs_remove(skx_test);
+ skx_test = NULL;
+ }
}
static void teardown_skx_debug(void)