sparc: properly conditionalize use of TIF_32BIT
authorStephen Rothwell <sfr@canb.auug.org.au>
Tue, 22 Apr 2014 06:22:07 +0000 (16:22 +1000)
committerEric Paris <eparis@redhat.com>
Tue, 23 Sep 2014 20:21:27 +0000 (16:21 -0400)
After merging the audit tree, today's linux-next build (sparc defconfig)
failed like this:

In file included from include/linux/audit.h:29:0,
                 from mm/mmap.c:33:
arch/sparc/include/asm/syscall.h: In function 'syscall_get_arch':
arch/sparc/include/asm/syscall.h:131:9: error: 'TIF_32BIT' undeclared (first use in this function)
arch/sparc/include/asm/syscall.h:131:9: note: each undeclared identifier is reported only once for each function it appears in

And many more ...

Caused by commit 374c0c054122 ("ARCH: AUDIT: implement syscall_get_arch
for all arches").

This patch wraps the usage of TIF_32BIT in:
   if defined(__sparc__) && defined(__arch64__)
Which solves the build problem.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Acked-by: Richard Guy Briggs <rgb@redhat.com>
Signed-off-by: Eric Paris <eparis@redhat.com>
arch/sparc/include/asm/syscall.h

index fed3d511b108e955b02c8570ce0347fb1adadfbf..a5a8153766b39c716b7a1241cf5b14e4f8852a63 100644 (file)
@@ -128,8 +128,12 @@ static inline void syscall_set_arguments(struct task_struct *task,
 
 static inline int syscall_get_arch(void)
 {
+#if defined(__sparc__) && defined(__arch64__)
        return test_thread_flag(TIF_32BIT) ? AUDIT_ARCH_SPARC
                                           : AUDIT_ARCH_SPARC64;
+#else
+       return AUDIT_ARCH_SPARC;
+#endif
 }
 
 #endif /* __ASM_SPARC_SYSCALL_H */