Re: [PATCH v8 00/12] add support for Clang's Shadow Call Stack
From: Sami Tolvanen <samitolvanen@google.com>
Date: 2020-02-19 20:12:36
Also in:
lkml
From: Sami Tolvanen <samitolvanen@google.com>
Date: 2020-02-19 20:12:36
Also in:
lkml
On Wed, Feb 19, 2020 at 10:38 AM James Morse [off-list ref] wrote:
This looks like reserving x18 is causing Clang to not-inline the __kern_hyp_va() calls, losing the vitally important section information. (I can see why the compiler thinks this is fair)
Thanks for catching this. This doesn't appear to be caused by reserving x18, it looks like SCS itself is causing clang to avoid inlining these. If I add __noscs to __kern_hyp_va(), clang inlines the function again. __always_inline also works, as you pointed out.
Is this a known, er, thing, with clang-9?
I can reproduce this with ToT clang as well.
I suspect repainting all KVM's 'inline' with __always_inline will fix it. (yuck!) I'll try tomorrow.
I think switching to __always_inline is the correct solution here. Sami _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel