linux-kselftest.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 0/3] arm64/sve: Document our actual SVE syscall ABI
@ 2022-07-20 20:50 Mark Brown
  2022-07-20 20:50 ` [PATCH v1 1/3] kselftest/arm64: Correct buffer allocation for SVE Z registers Mark Brown
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Mark Brown @ 2022-07-20 20:50 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon, Shuah Khan
  Cc: Marc Zyngier, Mark Rutland, Zhang Lei, linux-kselftest,
	linux-arm-kernel, Mark Brown

Currently our SVE syscall ABI documentation does not reflect the actual
implemented ABI, it says that register state not shared with FPSIMD
becomes undefined on syscall when in reality we always clear it. Since
changing this would cause a change in the observed kernel behaviour
there is a substantial desire to avoid taking advantage of the
documented ABI so instead let's document what we actually do so it's
clear that it is in reality an ABI.

There has been some pushback on tightening the documentation in the past
but it is hard to see who that helps, it makes the implementation
decisions less clear and makes it harder for people to discover and make
use of the actual ABI. The main practical concern is that qemu's user
mode does not currently flush the registers.

Mark Brown (3):
  kselftest/arm64: Correct buffer allocation for SVE Z registers
  arm64/sve: Document our actual ABI for clearing registers on syscall
  kselftest/arm64: Enforce actual ABI for SVE syscalls

 Documentation/arm64/sve.rst                   |  2 +-
 .../testing/selftests/arm64/abi/syscall-abi.c | 61 ++++++++++++-------
 2 files changed, 41 insertions(+), 22 deletions(-)


base-commit: a111daf0c53ae91e71fd2bfe7497862d14132e3e
-- 
2.30.2


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-07-21 15:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-20 20:50 [PATCH v1 0/3] arm64/sve: Document our actual SVE syscall ABI Mark Brown
2022-07-20 20:50 ` [PATCH v1 1/3] kselftest/arm64: Correct buffer allocation for SVE Z registers Mark Brown
2022-07-20 20:50 ` [PATCH v1 2/3] arm64/sve: Document our actual ABI for clearing registers on syscall Mark Brown
2022-07-20 20:50 ` [PATCH v1 3/3] kselftest/arm64: Enforce actual ABI for SVE syscalls Mark Brown
2022-07-21 15:25 ` [PATCH v1 0/3] arm64/sve: Document our actual SVE syscall ABI Catalin Marinas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).