Messages in this thread | | | Date | Fri, 11 Apr 2008 07:46:48 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: [PATCH] Fix compile breakage caused by asmlinkage_protect |
| |
On Fri, 11 Apr 2008, Heiko Carstens wrote: > > git commit 54a015104136974262afa4b8ddd943ea70dec8a2 > "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
Ok, that's just _odd_.
> So just surround the new define with an #ifndef __ASSEMBLY__ to prevent > any side effects on asm code.
There are no side effects on asm code. It just adds a #define that obviously won't be used.
Is the s390 assembler using some strange C pre-processor that is different from the main C preprocessor and doesn't understand this pattern?
I really think you should fix *that*, because otherwise you'll hit these kinds of bugs occasionally. There aren't that many asm files, it's not worth it optimizing them to use some faster-but-stupider preprocessor.
Linus
| |