On Tue, Oct 30, 2018 at 06:39:24PM +0900, Masahiro Yamada wrote: > Hi, > > > > On Tue, Oct 30, 2018 at 3:57 PM Zhenzhong Duan > <zhenzhong.d...@oracle.com> wrote: > > > > Since retpoline capable compilers are widely available, make > > CONFIG_RETPOLINE hard depend on it. > > > > Change KBUILD to use CONFIG_RETPOLINE_SUPPORT to avoid conflict with > > CONFIG_RETPOLINE which is used by kernel. > > > > With all that stuff, the check of RETPOLINE is changed to > > CONFIG_RETPOLINE. > > > > This change is based on suggestion in https://lkml.org/lkml/2018/9/18/1016 > > > > Signed-off-by: Zhenzhong Duan <zhenzhong.d...@oracle.com> > > Cc: Thomas Gleixner <t...@linutronix.de> > > Cc: Peter Zijlstra <pet...@infradead.org> > > Cc: Borislav Petkov <b...@suse.de> > > Cc: Daniel Borkmann <dan...@iogearbox.net> > > Cc: David Woodhouse <d...@amazon.co.uk> > > Cc: H. Peter Anvin <h...@zytor.com> > > Cc: Ingo Molnar <mi...@redhat.com> > > Cc: Konrad Rzeszutek Wilk <konrad.w...@oracle.com> > > Cc: Andy Lutomirski <l...@kernel.org> > > Cc: Masahiro Yamada <yamada.masah...@socionext.com> > > Cc: Michal Marek <michal.l...@markovi.net> > > --- > > > Instead of adding another CONFIG option, > does it make sense to add compiler support checks > to 'depends on' syntax ? > > > config RETPOLINE > bool "Avoid speculative indirect branches in kernel" > depends on $(cc-option,-mindirect-branch=thunk-extern > -mindirect-branch-register) || \ > $(cc-option,-mretpoline-external-thunk) > default y > select STACK_VALIDATION if HAVE_STACK_VALIDATION
That seems to be what we did for stackprotector, which is similar in that it used to fail the build. So yes, this seems sane.