----- Ursprüngliche Mail ----- > Von: "davidgow" <davidgow@xxxxxxxxxx> > asm/current.h is included by some assembly files (either directly, or > indirectly). This works on some architectures (such as x86), as their > implementation of current.h is careful to not include any C, but the > asm-generic version includes linux/thread-info.h unconditionally, which > leads to errors when either C code or non-asm-compatible preprocessor > directives are included. > > Just wrap the contents behind an #ifndef __ASSEMBLY__ to avoid any C > code making its way in. > > Signed-off-by: David Gow <davidgow@xxxxxxxxxx> > --- > > This is requrired for patch #2 here, as UML uses this asm-generic > header, but works with x86 assembly files which are expecting the x86 > current.h, which is assembly-friendly. > > --- > include/asm-generic/current.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/include/asm-generic/current.h b/include/asm-generic/current.h > index 3a2e224b9fa0..9c2aeecbd05a 100644 > --- a/include/asm-generic/current.h > +++ b/include/asm-generic/current.h > @@ -2,9 +2,11 @@ > #ifndef __ASM_GENERIC_CURRENT_H > #define __ASM_GENERIC_CURRENT_H > > +#ifndef __ASSEMBLY__ > #include <linux/thread_info.h> > > #define get_current() (current_thread_info()->task) > #define current get_current() > +#endif > > #endif /* __ASM_GENERIC_CURRENT_H */ I'm fine with the UML side of this change but the generic part needs Arnd's ACK. Thanks, //richard