It happens on ARM only because it does not have the getcontext() API so a different implementation is used for user context switching.
On non-ARM one can select the setjmp based implementation (all 3 args must be given or it will be a mix of setjmp/ucontext and it won't build) by via configure
ex:
./configure --with-mctx-mth=sjlj --with-mctx-dsp=sjlj --with-mctx-stk=ss
then make test exhibits the same error
Probably this codepath was not much tested after changes to jmpbuf in glibc.
It happens on ARM only because it does not have the getcontext() API so a different implementation is used for user context switching.
On non-ARM one can select the setjmp based implementation (all 3 args must be given or it will be a mix of setjmp/ucontext and it won't build) by via configure mctx-mth= sjlj --with- mctx-dsp= sjlj --with-mctx-stk=ss
ex:
./configure --with-
then make test exhibits the same error
Probably this codepath was not much tested after changes to jmpbuf in glibc.