Re: [PATCH -next] powerpc/eeh: fix compile warning with CONFIG_PROC_FS=n

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





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@xxxxxxxxxx>
Signed-off-by: Yang Yingliang <yangyingliang@xxxxxxxxxx>
---
  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



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux