Hi all, it seems that I'm able to reproduce a register (or stack) corruption on x86.
The problem does not appear when running the Xenomai testsuite (especially switchtest) without any additional load. Stressing Linux with stress-ng makes the test fail. Kernel: 4.19.231-cip68 Xenomai: 3.2.1 Hardware: - Intel(R) Xeon(R) CPU E5-2640 v3 @ 2.60GHz - 32 cores stress-ng cmdline: stress-ng --cpu 16 --io 8 --vm 4 --vm-bytes 128M --fork 8 Any ideas how to debug that? Any additional config options that could/should be enabled? Any advice is welcome... Adding Richard to CC, he mentioned some undiscovered possible stack corruption as well. As registers are stored on the stack, there might be a pattern. dmesg (from one xeno-test run): [ 184.461138] sched: RT throttling activated [ 250.243970] arch/x86/xenomai/ipipe/include/asm/xenomai/fptest.h:43: Warning: Linux is compiled to use FPU in kernel-s. [ 250.243970] For this reason, switchtest can not test using FPU in Linux kernel-space. [ 250.244148] r1: 2147483648 != 5 [ 250.375609] r2: 2147483648 != 5 [ 250.394381] r3: 2147483648 != 5 [ 250.413155] r4: 2147483648 != 5 [ 250.431924] r5: 2147483648 != 5 [ 250.450694] r6: 2147483648 != 5 [ 250.469466] r7: 2147483648 != 5 [ 250.488240] r4: 2147483648 != 5 [ 250.507011] r5: 2147483648 != 5 [ 250.525784] r6: 2147483648 != 5 [ 250.544555] r7: 2147483648 != 5 [ 250.563325] r6: 2147483648 != 5 [ 250.582097] r7: 2147483648 != 5 [ 250.600869] r5: 2147483648 != 5 [ 250.619643] r6: 2147483648 != 5 [ 250.638412] r7: 2147483648 != 5 [ 250.657184] r2: 2147483648 != 5 [ 250.675957] r3: 2147483648 != 5 [ 250.694728] r4: 2147483648 != 5 [ 250.713500] r5: 2147483648 != 5 [ 250.732271] r6: 2147483648 != 5 [ 250.751043] r7: 2147483648 != 5 [ 250.769816] r7: 2147483648 != 5 [ 250.788587] r4: 2147483648 != 6 [ 250.807360] r5: 2147483648 != 6 [ 250.826130] r6: 2147483648 != 6 [ 250.844902] r7: 2147483648 != 6 [ 250.863675] r6: 2147483648 != 5 [ 250.882447] r7: 2147483648 != 5 [ 250.901219] r2: 2147483648 != 5 [ 250.919990] r3: 2147483648 != 5 [ 250.938762] r4: 2147483648 != 5 [ 250.957534] r5: 2147483648 != 5 [ 250.976305] r6: 2147483648 != 5 [ 250.995076] r7: 2147483648 != 5 [ 251.013853] r6: 2147483648 != 5 [ 251.032621] r7: 2147483648 != 5 [ 251.051393] r6: 2147483648 != 6 [ 251.070164] r7: 2147483648 != 6 [ 251.088935] r7: 2147483648 != 6 [ 251.107709] r5: 2147483648 != 6 [ 251.126480] r6: 2147483648 != 6 [ 251.145252] r7: 2147483648 != 6 Best regards, Florian
