I'm going a bit out-of-order to report a build failure in a test: Mark Brown <broonie@xxxxxxxxxx> writes: > +// Recurse x20 times > +.macro recurse id I get an assembler error here: gcc -nostdlib gcs-stress-thread.S -o /home/thiago.bauermann/src/linux/tools/testing/selftests/arm64/gcs/gcs-stress-thread gcs-stress-thread.S: Assembler messages: gcs-stress-thread.S:236: Error: unexpected end of file in macro `recurse' definition make[2]: *** [Makefile:24: /home/thiago.bauermann/src/linux/tools/testing/selftests/arm64/gcs/gcs-stress-thread] Error 1 This is with gas from Ubuntu 22.04, which ships binutils 2.38. > +function recurse\id > + stp x29, x30, [sp, #-16]! > + mov x29, sp > + > + cmp x20, 0 > + beq 1f > + sub x20, x20, 1 > + bl recurse\id > + > +1: > + ldp x29, x30, [sp], #16 > + > + // Do a syscall immediately prior to returning to try to provoke > + // scheduling and migration at a point where coherency issues > + // might trigger. > + mov x8, #__NR_getpid > + svc #0 > + > + ret > +endfunction > +.endmacro > + > +// Generate and use two copies so we're changing the GCS contents > +recurse 1 > +recurse 2 -- Thiago