The patch titled Subject: include/linux/compiler*.h: add version detection to asm_volatile_goto has been removed from the -mm tree. Its filename was include-linux-compilerh-add-version-detection-to-asm_volatile_goto.patch This patch was dropped because an updated version will be merged ------------------------------------------------------ From: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> Subject: include/linux/compiler*.h: add version detection to asm_volatile_goto The comment above asm_volatile_goto mentions working around a GCC bug, and links to a bug report that claims this has been fixed in newer versions of GCC. Testing shows that this was resolved in GCC 4.8.2. asm_volatile_goto should also be defined for other compilers that support asm goto. Link: http://lkml.kernel.org/r/20180907222109.163802-1-ndesaulniers@xxxxxxxxxx Signed-off-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> Reviewed-by: Miguel Ojeda <miguel.ojeda.sandonis@xxxxxxxxx> Cc: Kees Cook <keescook@xxxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxxxxx> Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> Cc: Arnd Bergmann <arnd@xxxxxxxx> Cc: Joe Perches <joe@xxxxxxxxxxx> Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx> Cc: Paul Burton <paul.burton@xxxxxxxx> Cc: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> Cc: Will Deacon <will.deacon@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/compiler-gcc.h | 7 ++++++- include/linux/compiler_types.h | 4 ++++ 2 files changed, 10 insertions(+), 1 deletion(-) --- a/include/linux/compiler-gcc.h~include-linux-compilerh-add-version-detection-to-asm_volatile_goto +++ a/include/linux/compiler-gcc.h @@ -157,7 +157,7 @@ #endif /* - * GCC 'asm goto' miscompiles certain code sequences: + * GCC < 4.8.2 'asm goto' miscompiles certain code sequences: * * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670 * @@ -165,7 +165,12 @@ * * (asm goto is automatically volatile - the naming reflects this.) */ +#if GCC_VERSION < 40802 #define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) +#else +#define asm_volatile_goto(x...) asm goto(x) +#endif + /* * sparse (__CHECKER__) pretends to be gcc, but can't do constant --- a/include/linux/compiler_types.h~include-linux-compilerh-add-version-detection-to-asm_volatile_goto +++ a/include/linux/compiler_types.h @@ -151,6 +151,10 @@ struct ftrace_likely_data { #define __assume_aligned(a, ...) #endif +#ifndef asm_volatile_goto +#define asm_volatile_goto(x...) asm goto(x) +#endif + /* Are two types/vars the same type (ignoring qualifiers)? */ #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) _ Patches currently in -mm which might be from ndesaulniers@xxxxxxxxxx are treewide-remove-current_text_addr.patch