Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libglvnd for openSUSE:Factory checked in at 2022-01-23 12:15:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libglvnd (Old) and /work/SRC/openSUSE:Factory/.libglvnd.new.1938 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libglvnd" Sun Jan 23 12:15:15 2022 rev:23 rq:947893 version:1.4.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libglvnd/libglvnd.changes 2022-01-07 12:45:18.727800914 +0100 +++ /work/SRC/openSUSE:Factory/.libglvnd.new.1938/libglvnd.changes 2022-01-23 12:16:34.744110610 +0100 @@ -1,0 +2,7 @@ +Fri Jan 21 09:05:39 UTC 2022 - Guillaume GARDET <guillaume.gar...@opensuse.org> + +- Re-enable asm on aarch64 +- Add patch to fix run with BTI enabled on aarch64: + * libglvnd-add-bti.patch - boo#1188928 + +------------------------------------------------------------------- New: ---- libglvnd-add-bti.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libglvnd.spec ++++++ --- /var/tmp/diff_new_pack.HMx4yn/_old 2022-01-23 12:16:35.180107696 +0100 +++ /var/tmp/diff_new_pack.HMx4yn/_new 2022-01-23 12:16:35.188107643 +0100 @@ -29,6 +29,8 @@ Source1: baselibs.conf Source2: libglvnd.rpmlintrc Patch1: disable-glx-tests.patch +# PATCH-FIX-UPSTREAM - https://github.com/NVIDIA/libglvnd/pull/214 +Patch2: libglvnd-add-bti.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool @@ -60,6 +62,7 @@ %prep %setup -q %patch1 -p1 +%patch2 -p1 # fix env shebang to call py3 directly sed -i -e "1s|#!.*|#!%{_bindir}/python3|" src/generate/*.py @@ -69,11 +72,6 @@ %if 0%{?suse_version} < 1330 --libdir=%{_prefix}/X11R6/%{_lib} \ %endif -%if 0%{?suse_version} > 1500 -%ifarch aarch64 - --disable-asm \ -%endif -%endif --disable-static \ --disable-headers \ --disable-silent-rules ++++++ libglvnd-add-bti.patch ++++++ >From 5dc67a6310e32e0d36527c4eaa1b92c39beb8c8c Mon Sep 17 00:00:00 2001 From: Guillaume Gardet <guillaume.gar...@arm.com> Date: Fri, 21 Jan 2022 09:26:07 +0100 Subject: [PATCH] Add BTI landing pads for aarch64 When Branch Target Identifier (BTI) is enabled on aarch64, any software which run libglbnd will fail with SIGILL, Illegal instruction. This is because some assembler code misses the BTI landing pads. See: https://developer.arm.com/documentation/102433/0100/Jump-oriented-programming "hint #34" is the same thing as "BTI C" landing pad, but keep compatibility with systems without BTI enabled. --- src/GLdispatch/vnd-glapi/entry_aarch64_tsd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/GLdispatch/vnd-glapi/entry_aarch64_tsd.c b/src/GLdispatch/vnd-glapi/entry_aarch64_tsd.c index ae80131..00c4132 100644 --- a/src/GLdispatch/vnd-glapi/entry_aarch64_tsd.c +++ b/src/GLdispatch/vnd-glapi/entry_aarch64_tsd.c @@ -55,7 +55,8 @@ ".balign " U_STRINGIFY(ENTRY_STUB_ALIGN) "\n\t" \ ".global " func "\n\t" \ ".type " func ", %function\n\t" \ - func ":\n\t" + func ":\n\t" \ + "hint #34\n\t" /* * Looks up the current dispatch table, finds the stub address at the given slot @@ -69,6 +70,7 @@ * table then does a branch without link to the function address. */ #define STUB_ASM_CODE(slot) \ + "hint #34\n\t" \ "stp x1, x0, [sp, #-16]!\n\t" \ "adrp x0, :got:_glapi_Current\n\t" \ "ldr x0, [x0, #:got_lo12:_glapi_Current]\n\t" \