>but it ALSO fails in a bullseye chroot, so this is possibly not related

In case this makes anyone immediately think of whatever it is:

(gdb) r
Starting program: /home/tg/dietlibc-0.34~cvs20160606-el-11/debian/unittests/ttt

Program received signal SIGILL, Illegal instruction.
__testandset () at arm/__testandset.S:7
7               swp     r0, r1, [r2]
(gdb) bt
#0  __testandset () at arm/__testandset.S:7
#1  0x000113d4 in __pthread_lock (lock=lock@entry=0x25054 <_main_thread+20>) at 
libpthread/pthread_spinlock.c:84
#2  0x0001052c in __thread_find_ (pid=<optimized out>) at 
libpthread/pthread_internal.c:98
#3  0x00010578 in __thread_self () at libpthread/pthread_internal.c:127
#4  0x00010280 in malloc (size=32) at libpthread/pthread_sys_alloc.c:20
#5  0x00010124 in main ()
(gdb) info r
r0             0x25054             151636
r1             0x1                 1
r2             0x25054             151636
r3             0x0                 0
r4             0x0                 0
r5             0x25054             151636
r6             0x0                 0
r7             0x1e8481            2000001
r8             0x10                16
r9             0xfffef684          4294899332
r10            0xfffef68c          4294899340
r11            0xfffef67c          4294899324
r12            0x14                20
sp             0xfffef3c0          0xfffef3c0
lr             0x113d4             70612
pc             0x11480             0x11480 <__testandset+8>
cpsr           0x60000010          1610612752
fpscr          0x0                 0
(gdb) disas
Dump of assembler code for function __testandset:
   0x00011478 <+0>:     mov     r2, r0
   0x0001147c <+4>:     mov     r1, #1
=> 0x00011480 <+8>:     swp     r0, r1, [r2]
   0x00011484 <+12>:    bx      lr
End of assembler dump.

Reply via email to