[PATCH 0/5] s390/uvdevice: Expose secret UVCs

From: Steffen Eiden
Date: Fri May 12 2023 - 05:32:08 EST


IBM Secure Execution guests may want to inject secrets into the Ultravisor(UV).
Also they should be able to know which secrets the UV possesses and prevent the
further addition of more secrets.

Therefore, add three new Ultravisor-Calls and expose them via the uvdevice:
Add Secret, List Secrets, and Lock Secrets.
The uvdevice still acts as the messenger only and does not inspect or modify
the requests. Only some sanity checks are made to prevent the kernel from corruption.
Also add a new IOCTL to get information about the supported UV-calls of the uvdevice.
As userspace wants to know which secrets, types, etc. are supported expose the corresponding
UV Query info data to userspace via sysfs.

The series contains:
* A new info IOCTL, giving information about the capabilities of the uvdevice and UV
* 3 patches adding new Ultravisor-Calls and expose them to userspace
* A patch with an Ultravisor Query Info update for the new secret related information

Steffen

Steffen Eiden (5):
s390/uvdevice: Add info IOCTL
s390/uvdevice: Add 'Add Secret' UVC
s390/uvdevice: Add 'List Secrets' UVC
s390/uvdevice: Add 'Lock Secret Store' UVC
s390/uv: Update query for secret-UVCs

arch/s390/boot/uv.c | 4 +
arch/s390/include/asm/uv.h | 30 +++-
arch/s390/include/uapi/asm/uvdevice.h | 56 ++++++-
arch/s390/kernel/uv.c | 40 +++++
drivers/s390/char/uvdevice.c | 229 +++++++++++++++++++++++++-
5 files changed, 350 insertions(+), 9 deletions(-)

--
2.40.1