[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABCJKufjgT9r_cuRxyth3y_rLPW43OBqtmPB_hQVkSftXUfp=w@mail.gmail.com>
Date: Mon, 14 Aug 2023 11:33:46 -0700
From: Sami Tolvanen <samitolvanen@...gle.com>
To: Nathan Chancellor <nathan@...nel.org>
Cc: Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
Kees Cook <keescook@...omium.org>, Guo Ren <guoren@...nel.org>,
Deepak Gupta <debug@...osinc.com>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Fangrui Song <maskray@...gle.com>,
linux-riscv@...ts.infradead.org, llvm@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/5] riscv: SCS support
On Mon, Aug 14, 2023 at 10:59 AM Nathan Chancellor <nathan@...nel.org> wrote:
> I took this series for a spin on top of 6.5-rc6 with both LLVM 18 (built
> within the past couple of days) and LLVM 17.0.0-rc2 but it seems that
> the CFI_BACKWARDS LKDTM test does not pass with
> CONFIG_SHADOW_CALL_STACK=y.
>
> [ 73.324652] lkdtm: Performing direct entry CFI_BACKWARD
> [ 73.324900] lkdtm: Attempting unchecked stack return address redirection ...
> [ 73.325178] lkdtm: Eek: return address mismatch! 0000000000000002 != ffffffff80614982
> [ 73.325478] lkdtm: FAIL: stack return address manipulation failed!
>
> Does the test need to be adjusted or is there some other issue?
The test doesn't work on RISC-V. set_return_addr_unchecked thinks 0x2
is the return address, so I assume the __builtin_frame_address logic
isn't quite right here. Kees, any thoughts?
Sami
Powered by blists - more mailing lists