Re: [PATCH] x86, mce: cleanup initcall of debugfs for mce

From: Jin Dongming
Date: Wed Aug 05 2009 - 05:01:13 EST


Andi Kleen wrote:
>
> Sorry but I think it's better to have an own initcall per file,
> that makes everything more self contained and easier to read.
>
> -Andi
>
Thank you for your comment.

That's OK, but this patch is also used for resolving compile error
without CONFIG_DEBUG_FS. Then how about this patch?

Best regards,
Jin Dongming


===

[PATCH] x86,mce: Add ifdef for severities_debugfs_init()

This patch is made based on the v5 patches of Huangying for mce.
Before using this patch, please apply the patches of Huangying.
The patches' URLs of Huangying are listed as following:
1.x86: MCE: Support specifying context for software mce injection
URL: http://marc.info/?l=linux-kernel&m=124900459100786&w=2
2.x86: MCE: Support specifying raise mode for software MCE injection
URL: http://marc.info/?l=linux-kernel&m=124900459100795&w=2
3.x86: MCE: Move debugfs mce dir creating to mce.c
URL: http://marc.info/?l=linux-kernel&m=124900459100790&w=2
4.x86: MCE: Fake panic support for MCE testing
URL: http://marc.info/?l=linux-kernel&m=124900453800724&w=2

When the kernel is compiled without CONFIG_DEBUG_FS, compiler could
not find out mce_get_debugfs_dir() which is used by
severities_debugfs_init() and output the error message.

This version is based x86-tip/mce.

Signed-off-by: Jin Dongming <jin.dongming@xxxxxxxxxxxxxxxxxx>
Reviewed-by: Hidetoshi Seto <seto.hidetoshi@xxxxxxxxxxxxxx>
---
arch/x86/kernel/cpu/mcheck/mce-internal.h | 3 +++
arch/x86/kernel/cpu/mcheck/mce-severity.c | 2 ++
2 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/arch/x86/kernel/cpu/mcheck/mce-internal.h b/arch/x86/kernel/cpu/mcheck/mce-internal.h
index 32996f9..58b01d4 100644
--- a/arch/x86/kernel/cpu/mcheck/mce-internal.h
+++ b/arch/x86/kernel/cpu/mcheck/mce-internal.h
@@ -22,7 +22,10 @@ struct mce_bank {
};

int mce_severity(struct mce *a, int tolerant, char **msg);
+
+#ifdef CONFIG_DEBUG_FS
struct dentry *mce_get_debugfs_dir(void);
+#endif

extern int mce_ser;

diff --git a/arch/x86/kernel/cpu/mcheck/mce-severity.c b/arch/x86/kernel/cpu/mcheck/mce-severity.c
index bc35a07..8a85dd1 100644
--- a/arch/x86/kernel/cpu/mcheck/mce-severity.c
+++ b/arch/x86/kernel/cpu/mcheck/mce-severity.c
@@ -139,6 +139,7 @@ int mce_severity(struct mce *a, int tolerant, char **msg)
}
}

+#ifdef CONFIG_DEBUG_FS
static void *s_start(struct seq_file *f, loff_t *pos)
{
if (*pos >= ARRAY_SIZE(severities))
@@ -212,3 +213,4 @@ err_out:
return -ENOMEM;
}
late_initcall(severities_debugfs_init);
+#endif
--
1.6.2.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/