Le 19/08/2021 à 16:56, Christophe Leroy a écrit :


Le 19/08/2021 à 14:56, Cédric Le Goater a écrit :
This fixes a compile error with W=1.

Cc: Christophe Leroy <christophe.le...@c-s.fr>
Signed-off-by: Cédric Le Goater <c...@kaod.org>
---

  I don't think this is correct. Which file could we use ?

I think you can completely remove ppc32_classify_syscall(), and instead add the following in the default case in audit_classify_syscall():

      default:
+        if (IS_ENABLED(CONFIG_PPC64) && abi == AUDIT_ARCH_PPC)
+            return 1;
          return 0;


After looking more in details, in fact I think we should convert powerpc to CONFIG_AUDIT_ARCH_COMPAT_GENERIC



  arch/powerpc/include/asm/unistd.h | 3 +++
  arch/powerpc/kernel/audit.c       | 1 -
  2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/include/asm/unistd.h 
b/arch/powerpc/include/asm/unistd.h
index b541c690a31c..d9025a7e973c 100644
--- a/arch/powerpc/include/asm/unistd.h
+++ b/arch/powerpc/include/asm/unistd.h
@@ -47,6 +47,9 @@
  #define __ARCH_WANT_SYS_UTIME
  #define __ARCH_WANT_SYS_NEWFSTATAT
  #define __ARCH_WANT_COMPAT_SYS_SENDFILE
+#ifdef CONFIG_AUDIT
+extern int ppc32_classify_syscall(unsigned int syscall);
+#endif
  #endif
  #define __ARCH_WANT_SYS_FORK
  #define __ARCH_WANT_SYS_VFORK
diff --git a/arch/powerpc/kernel/audit.c b/arch/powerpc/kernel/audit.c
index a2dddd7f3d09..c3c6c6a1069b 100644
--- a/arch/powerpc/kernel/audit.c
+++ b/arch/powerpc/kernel/audit.c
@@ -41,7 +41,6 @@ int audit_classify_arch(int arch)
  int audit_classify_syscall(int abi, unsigned syscall)
  {
  #ifdef CONFIG_PPC64
-    extern int ppc32_classify_syscall(unsigned);
      if (abi == AUDIT_ARCH_PPC)
          return ppc32_classify_syscall(syscall);
  #endif

Reply via email to