Re: [PATCH 04/11] powerpc/xive: Introduce xive_core_debugfs_create()
From: Cédric Le Goater <clg@kaod.org>
Date: 2021-11-18 16:42:42
On 11/18/21 10:21, Michael Ellerman wrote:
Cédric Le Goater [off-list ref] writes:quoted
and fix some compile issues when !CONFIG_DEBUG_FS. Signed-off-by: Cédric Le Goater <clg@kaod.org> --- arch/powerpc/sysdev/xive/common.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-)diff --git a/arch/powerpc/sysdev/xive/common.c b/arch/powerpc/sysdev/xive/common.c index 3d558cad1f19..b71cc1020296 100644 --- a/arch/powerpc/sysdev/xive/common.c +++ b/arch/powerpc/sysdev/xive/common.c...quoted
@@ -1779,10 +1782,18 @@ static int xive_core_debug_show(struct seq_file *m, void *private) } DEFINE_SHOW_ATTRIBUTE(xive_core_debug); +static void xive_core_debugfs_create(void) +{ + debugfs_create_file("xive", 0400, arch_debugfs_dir, + NULL, &xive_core_debug_fops); +} + +#endif /* CONFIG_DEBUG_FS */ + int xive_core_debug_init(void) { - if (xive_enabled()) - debugfs_create_file("xive", 0400, arch_debugfs_dir, - NULL, &xive_core_debug_fops); + if (xive_enabled() && IS_ENABLED(CONFIG_DEBUG_FS)) + xive_core_debugfs_create(); + return 0; }For skiroot_defconfig this gives me: arch/powerpc/sysdev/xive/common.c: In function ‘xive_core_init’: arch/powerpc/sysdev/xive/common.c:1676:2: error: implicit declaration of function ‘xive_core_debugfs_create’; did you mean ‘xive_core_debug_init’? [-Werror=implicit-function-declaration] 1676 | xive_core_debugfs_create(); | ^~~~~~~~~~~~~~~~~~~~~~~~ | xive_core_debug_init cc1: all warnings being treated as errors We need an empty inline stub of xive_core_debugfs_create() for the CONFIG_DEBUG_FS=n case.
I thought IS_ENABLED(CONFIG_DEBUG_FS)) was protecting compile from that issue. Do you want a v2 for the whole ? Or, I can send a replacement for patch 4 only.
I'm wondering though why do we have xive_core_debug_init() at all, why don't we just initialise the debugfs files in xive_core_init()?
I think I tried that and there was an ordering issue. Thanks, C.