Re: [PATCH] kselftest/arm64: bti: force static linking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 16, 2022 at 10:29:35AM +0100, Andre Przywara wrote:
> On Sun, 15 May 2022 11:05:23 +0100
> Catalin Marinas <catalin.marinas@xxxxxxx> wrote:
> > On Wed, May 11, 2022 at 06:21:29PM +0100, Andre Przywara wrote:
> > > The "bti" selftests are built with -nostdlib, which apparently
> > > automatically creates a statically linked binary, which is what we want
> > > and need for BTI (to avoid interactions with the dynamic linker).
> > > 
> > > However this is not true when building a PIE binary, which some
> > > toolchains (Ubuntu) configure as the default.
> > > When compiling btitest with such a toolchain, it will create a
> > > dynamically linked binary, which will probably fail some tests, as the
> > > dynamic linker might not support BTI:
> > > ===================
> > > TAP version 13
> > > 1..18
> > > not ok 1 nohint_func/call_using_br_x0
> > > not ok 2 nohint_func/call_using_br_x16
> > > not ok 3 nohint_func/call_using_blr
> > > ....
> > > ===================
> > > 
> > > To make sure we create static binaries, add an explicit -static on the
> > > linker command line. This forces static linking even if the toolchain
> > > defaults to PIE builds, and fixes btitest runs on BTI enabled machines.
> > > 
> > > Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx>  
> > 
> > Does this need to go in as a fix (cc stable, fixes tag)?
> 
> I dimly remember some discussion about stable fixes not being a real thing
> for the selftests? In any case:
> 
> Fixes: 314bcbf09f14 ("kselftest: arm64: Add BTI tests")

I'll add the fixes tag. I can see the occasional cc stable for kselftest
patches.

-- 
Catalin



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux