On Tue, Sep 01, 2026 at 06:06:43PM +0100, Mark Brown wrote: > When they detect corruption the fp-stress test loads print load specific > diagnostics and exits with a failure status. In preparation for > building versions intended to run as KVM guests factor the exits into > asm-utils-linux.S. > > No functional change.
This is a good cleanup, but I do think it'd be worth noting that some of the existing asm was wrong and worked by coincidence. I did mention that in the patches I linked you to a while back: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?id=922d15ef46cb486a79f168949e103f6df26f4fba Mark. > > Signed-off-by: Mark Brown <[email protected]> > --- > tools/testing/selftests/arm64/fp/asm-utils-linux.S | 8 ++++++++ > tools/testing/selftests/arm64/fp/fpsimd-test.S | 4 +--- > tools/testing/selftests/arm64/fp/sve-test.S | 8 ++------ > tools/testing/selftests/arm64/fp/za-test.S | 8 ++------ > tools/testing/selftests/arm64/fp/zt-test.S | 4 +--- > 5 files changed, 14 insertions(+), 18 deletions(-) > > diff --git a/tools/testing/selftests/arm64/fp/asm-utils-linux.S > b/tools/testing/selftests/arm64/fp/asm-utils-linux.S > index 3effeb1fbf50..9cd31dc47709 100644 > --- a/tools/testing/selftests/arm64/fp/asm-utils-linux.S > +++ b/tools/testing/selftests/arm64/fp/asm-utils-linux.S > @@ -84,3 +84,11 @@ function tickle_handler > ret > endfunction > .globl tickle_handler > + > +// Terminate the program, reporting failure. Does not return. > +function exit_error > + mov x0, #1 > + mov x8, #__NR_exit > + svc #0 > +endfunction > +.globl exit_error > diff --git a/tools/testing/selftests/arm64/fp/fpsimd-test.S > b/tools/testing/selftests/arm64/fp/fpsimd-test.S > index 9db7b5419397..5ee8ef51ea4e 100644 > --- a/tools/testing/selftests/arm64/fp/fpsimd-test.S > +++ b/tools/testing/selftests/arm64/fp/fpsimd-test.S > @@ -298,7 +298,5 @@ function barf > bl dumphex > puts "]\n" > > - mov x8, #__NR_exit > - mov x1, #1 > - svc #0 > + b exit_error > endfunction > diff --git a/tools/testing/selftests/arm64/fp/sve-test.S > b/tools/testing/selftests/arm64/fp/sve-test.S > index 2aadb5c3c0f3..3447fe0e5554 100644 > --- a/tools/testing/selftests/arm64/fp/sve-test.S > +++ b/tools/testing/selftests/arm64/fp/sve-test.S > @@ -543,9 +543,7 @@ function vl_barf > mov x0, x10 > bl putdecn > > - mov x8, #__NR_exit > - mov x1, #1 > - svc #0 > + b exit_error > endfunction > > function svcr_barf > @@ -555,7 +553,5 @@ function svcr_barf > mov x0, x10 > bl putdecn > > - mov x8, #__NR_exit > - mov x1, #1 > - svc #0 > + b exit_error > endfunction > diff --git a/tools/testing/selftests/arm64/fp/za-test.S > b/tools/testing/selftests/arm64/fp/za-test.S > index 84e63e510f23..33dc4ce8bfa1 100644 > --- a/tools/testing/selftests/arm64/fp/za-test.S > +++ b/tools/testing/selftests/arm64/fp/za-test.S > @@ -354,9 +354,7 @@ function vl_barf > mov x0, x10 > bl putdecn > > - mov x8, #__NR_exit > - mov x1, #1 > - svc #0 > + b exit_error > endfunction > > function svcr_barf > @@ -366,7 +364,5 @@ function svcr_barf > mov x0, x10 > bl putdecn > > - mov x8, #__NR_exit > - mov x1, #1 > - svc #0 > + b exit_error > endfunction > diff --git a/tools/testing/selftests/arm64/fp/zt-test.S > b/tools/testing/selftests/arm64/fp/zt-test.S > index afcadb5aff23..c67242c2d5ab 100644 > --- a/tools/testing/selftests/arm64/fp/zt-test.S > +++ b/tools/testing/selftests/arm64/fp/zt-test.S > @@ -284,7 +284,5 @@ function svcr_barf > mov x0, x10 > bl putdecn > > - mov x8, #__NR_exit > - mov x1, #1 > - svc #0 > + b exit_error > endfunction > > -- > 2.47.3 >

