Messages in this thread | | | Subject | Re: [PATCH -next] powerpc/eeh: fix compile warning with CONFIG_PROC_FS=n | From | Christophe Leroy <> | Date | Sun, 6 Sep 2020 09:01:57 +0200 |
| |
Le 05/09/2020 à 13:17, Yang Yingliang a écrit : > Fix the compile warning: > > arch/powerpc/kernel/eeh.c:1639:12: error: 'proc_eeh_show' defined but not used [-Werror=unused-function] > static int proc_eeh_show(struct seq_file *m, void *v) > > Reported-by: Hulk Robot <hulkci@huawei.com> > Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> > --- > arch/powerpc/kernel/eeh.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/powerpc/kernel/eeh.c b/arch/powerpc/kernel/eeh.c > index 94682382fc8c..420c3c25c6e7 100644 > --- a/arch/powerpc/kernel/eeh.c > +++ b/arch/powerpc/kernel/eeh.c > @@ -1636,6 +1636,7 @@ int eeh_pe_inject_err(struct eeh_pe *pe, int type, int func, > } > EXPORT_SYMBOL_GPL(eeh_pe_inject_err); > > +#ifdef CONFIG_PROC_FS
I don't like this way of fixing the issue, because you'll get an unbalanced source code: proc_eeh_show() is apparently referenced all the time in eeh_init_proc(), but because proc_create_single() is a NULL macro when CONFIG_PROC_FS is not selected, you get the 'unused function' error.
I think the right fix should be to rewrite proc_create_single() as a static inline function that calls proc_create_single_data() when CONFIG_PROC_FS is selected and just returns NULL otherwise.
> static int proc_eeh_show(struct seq_file *m, void *v) > { > if (!eeh_enabled()) { > @@ -1662,6 +1663,7 @@ static int proc_eeh_show(struct seq_file *m, void *v) > > return 0; > } > +#endif > > #ifdef CONFIG_DEBUG_FS > static int eeh_enable_dbgfs_set(void *data, u64 val) >
Christophe
| |