lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 28 Feb 2022 16:31:58 -0800 From: Dan Li <ashimida@...ux.alibaba.com> To: Nick Desaulniers <ndesaulniers@...gle.com> Cc: Miguel Ojeda <miguel.ojeda.sandonis@...il.com>, Catalin Marinas <catalin.marinas@....com>, Will Deacon <will@...nel.org>, Nathan Chancellor <nathan@...nel.org>, Kees Cook <keescook@...omium.org>, Masahiro Yamada <masahiroy@...nel.org>, Thomas Gleixner <tglx@...utronix.de>, Andrew Morton <akpm@...ux-foundation.org>, Mark Rutland <mark.rutland@....com>, Sami Tolvanen <samitolvanen@...gle.com>, Nicholas Piggin <npiggin@...il.com>, Guenter Roeck <linux@...ck-us.net>, Masami Hiramatsu <mhiramat@...nel.org>, Miguel Ojeda <ojeda@...nel.org>, Luc Van Oostenryck <luc.vanoostenryck@...il.com>, Marco Elver <elver@...gle.com>, linux-kernel <linux-kernel@...r.kernel.org>, Linux ARM <linux-arm-kernel@...ts.infradead.org>, llvm@...ts.linux.dev, linux-hardening@...r.kernel.org Subject: Re: [PATCH] [PATCH v2] AARCH64: Add gcc Shadow Call Stack support On 2/28/22 14:35, Nick Desaulniers wrote: > On Sun, Feb 27, 2022 at 11:37 PM Dan Li <ashimida@...ux.alibaba.com> wrote: >>>> +#ifdef CONFIG_SHADOW_CALL_STACK >>>> +#define __noscs __attribute__((__no_sanitize__("shadow-call-stack"))) >>>> +#endif >>> >>> Since both compilers have it, and I guess the `#ifdef` condition would >>> work for both, could this be moved into `compiler_types.h` where the >>> empty `__noscs` definition is, and remove the one from >>> `compiler-clang.h`? >>> >> In the clang documentation I see __has_feature(shadow_call_stack) is >> used to check if -fsanitize=shadow-call-stack is enabled, so I think >> maybe it's fine to use "#ifdef CONFIG_SHADOW_CALL_STACK" >> instead of "#if __has_attribute(__no_sanitize_address__)" here, then >> move it to `compiler_types.h`. > > Or simply add a #define for __noscs to include/linux/compiler-gcc.h > with appropriate guard and leave the existing #ifndef in > include/linux/compiler_types.h as is. I'd prefer that when the > compilers differ in terms of feature detection since it's as explicit > as possible. > To make sure I understand correctly, that means I should keep the current patch unchanged right? Thanks, Dan.
Powered by blists - more mailing lists