Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: glxgears BTI SIGILL, arm64
To:
Matthieu Herrb <matthieu@openbsd.org>
Cc:
tech@openbsd.org
Date:
Sat, 16 Mar 2024 13:40:50 +0000

Download raw body.

Thread
On 2024/03/16 14:15, Matthieu Herrb wrote:
> 
> Hi,
> 
> there is a new upstream release of pixmam, which touches the arm64
> asm a bit, but I see no mention of BTI / endbr64 in the git log.
> 
> Moreover upstreams dropped the autotools based build system in favor
> of meson, so it's going to take some effort to upgrade it in xenocara.

Ah, I meant to add, but forgot before sending - but glxgears doesn't
seem to use pixman.

> 
> On Sat, Mar 16, 2024 at 12:10:19PM +0000, Stuart Henderson wrote:
> >  10913 glxgears PSIG  SIGILL SIG_DFL code=ILL_BTCFI addr=0x21ca5a3000 trapno=905969666
> > 
> > Anyone have suggestions as to how to track this down any further?
> > Nothing really useful from gdb (this is from an X build with -g). I
> > tried LD_DEBUG to see if that would help ID the library but it didn't
> > help me. ltrace with some kernel trace flags enabled too showed it
> > happening after opening mesa_shader_cache and doing some zlib
> > operations. The only arm64 asm I noticed in X was in pixman.
> > 
> > $ egdb glxgears
> > GNU gdb (GDB) 9.2
> > Copyright (C) 2020 Free Software Foundation, Inc.
> > License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> > This is free software: you are free to change and redistribute it.
> > There is NO WARRANTY, to the extent permitted by law.
> > Type "show copying" and "show warranty" for details.
> > This GDB was configured as "aarch64-unknown-openbsd7.5".
> > Type "show configuration" for configuration details.
> > For bug reporting instructions, please see:
> > <http://www.gnu.org/software/gdb/bugs/>.
> > Find the GDB manual and other documentation resources online at:
> >     <http://www.gnu.org/software/gdb/documentation/>.
> > 
> > For help, type "help".
> > Type "apropos word" to search for commands related to "word"...
> > Reading symbols from glxgears...
> > (gdb) r
> > Starting program: /usr/X11R6/bin/glxgears
> > [New thread 270983]
> > [New thread 518046]
> > [New thread 508613]
> > [New thread 331478]
> > [New thread 562301]
> > [New thread 483409]
> > [New thread 610898]
> > [New thread 306281]
> > [New thread 391533]
> > [New thread 341931]
> > [New thread 504069]
> > [New thread 354905]
> > [New thread 371905]
> > [New thread 482769]
> > [New thread 426808]
> > [New thread 111193]
> > [New thread 617204]
> > [New thread 290438]
> > [New thread 259400]
> > [New thread 183793]
> > [New thread 510635]
> > [New thread 516288]
> > [New thread 558437]
> > [New thread 255995]
> > [New thread 578587]
> > 
> > Thread 1 received signal SIGILL, Illegal instruction.
> > 0x000000153dac9000 in ?? ()
> > (gdb) bt
> > #0  0x000000153dac9000 in ?? ()
> > Backtrace stopped: previous frame identical to this frame (corrupt stack?)
> > (gdb) disassemble
> > No function contains program counter for selected frame.
> > (gdb) q
> > A debugging session is active.
> > 
> > 	Inferior 1 [process 68970] will be killed.
> > 
> > Quit anyway? (y or n) y
> > 
> > 
> 
> -- 
> Matthieu Herrb
>