• H
    Fix "$(AS) -traditional" compile breakage caused by asmlinkage_protect · b0fac023
    Heiko Carstens 提交于
    git commit 54a01510 ("asmlinkage_protect
    replaces prevent_tail_call") causes this build failure on s390:
    
        AS      arch/s390/kernel/entry64.o
      In file included from arch/s390/kernel/entry64.S:14:
      include/linux/linkage.h:34: error: syntax error in macro parameter list
      make[1]: *** [arch/s390/kernel/entry64.o] Error 1
      make: *** [arch/s390/kernel] Error 2
    
    and some other architectures.  The reason is that some architectures add
    the "-traditional" flag to the invocation of $(AS), which disables
    variadic macro argument support.
    
    So just surround the new define with an #ifndef __ASSEMBLY__ to prevent
    any side effects on asm code.
    
    Cc: Roland McGrath <roland@redhat.com>
    Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
    b0fac023
linkage.h 1.8 KB