Re: [RFC PATCH v2 2/2] selftests/x86: sysret_rip: Add more syscall tests with respect to `%rcx` and `%r11`

From: H. Peter Anvin
Date: Tue Jan 24 2023 - 01:18:55 EST




On 1/23/23 18:27, Ammar Faizi wrote:
From: Ammar Faizi <ammarfaizi2@xxxxxxxxxxx>

Test that:

- "syscall" in a FRED system doesn't clobber %rcx and %r11.
- "syscall" in a non-FRED system sets %rcx=%rip and %r11=%rflags.

Test them out with a trivial system call like __NR_getppid and friends
which are extremely likely to return with SYSRET on an IDT system; check
that it returns a nonnegative value and then save the result.


"Nonnegative" here should be "valid"; it is an implementation detail that the error value is -1.

However, you are not checking that you don't get a mix of REGS_SAVED and REGS_SYSRET, which is a major part of the point.

-hpa