]> sourceware.org Git - glibc.git/commit
x86: Properly set usable CET feature bits [BZ #26625]
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 27 Jan 2021 04:48:45 +0000 (20:48 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 29 Jan 2021 11:58:11 +0000 (03:58 -0800)
commit04dff6fc0d4ad44fc4491f89fed6574380b78251
treef90662c888d04e6323ab67a8035ff42a49394425
parent6032ae6514d2c8d47246f96626b5d8adc218b92d
x86: Properly set usable CET feature bits [BZ #26625]

commit 94cd37ebb293321115a36a422b091fdb72d2fb08
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Sep 16 05:27:32 2020 -0700

    x86: Use HAS_CPU_FEATURE with IBT and SHSTK [BZ #26625]

broke

GLIBC_TUNABLES=glibc.cpu.hwcaps=-IBT,-SHSTK

since it can no longer disable IBT nor SHSTK.  Handle IBT and SHSTK with:

1. Revert commit 94cd37ebb293321115a36a422b091fdb72d2fb08.
2. Clears the usable CET feature bits if kernel doesn't support CET.
3. Add GLIBC_TUNABLES tests without dlopen.
4. Add tests to verify that CPU_FEATURE_USABLE on IBT and SHSTK matches
_get_ssp.
5. Update GLIBC_TUNABLES tests with dlopen to verify that CET is disabled
with GLIBC_TUNABLES.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
sysdeps/x86/Makefile
sysdeps/x86/cpu-features.c
sysdeps/x86/dl-cet.c
sysdeps/x86/tst-cet-legacy-10-static.c [new file with mode: 0644]
sysdeps/x86/tst-cet-legacy-10.c [new file with mode: 0644]
sysdeps/x86/tst-cet-legacy-5.c
sysdeps/x86/tst-cet-legacy-6.c
sysdeps/x86/tst-cet-legacy-9-static.c [new file with mode: 0644]
sysdeps/x86/tst-cet-legacy-9.c [new file with mode: 0644]
sysdeps/x86/tst-get-cpu-features.c
This page took 0.041776 seconds and 5 git commands to generate.