[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241015112859.3069210-1-seiden@linux.ibm.com>
Date: Tue, 15 Oct 2024 13:28:53 +0200
From: Steffen Eiden <seiden@...ux.ibm.com>
To: linux-kernel@...r.kernel.org, linux-s390@...r.kernel.org
Cc: Ingo Franzki <ifranzki@...ux.ibm.com>,
Harald Freudenberger <freude@...ux.ibm.com>,
Christoph Schlameuss <schlameuss@...ux.ibm.com>,
Janosch Frank <frankja@...ux.ibm.com>,
Claudio Imbrenda <imbrenda@...ux.ibm.com>
Subject: [PATCH v3 0/6] s390/uv: Retrieve Secrets Ultravisor Call support
A new secret type (group) allows SE-guests to retrieve the secret value
from the UV secret store. All retrieved secrets (but plaintext) are
retrieved as a PCMKO-wrapped key so that they will never appear in
plaintext in the secure guest. Supported key/secret types are:
AES, AES-XTS, HMAC, and EC. Add support for an in-kernel API and an UAPI
to retrieve a previously added secret. If the Hardware supports it,
adding secrets works with the same infrastructure that is used by
associate secrets introduced with AP-pass-through support.
With this addition List Secret UVCs can report more-data now and may
expect a starting index different to zero. This requires the addition of
LIST_SECRET_EXT IOCTL that works the same as the non_EXT variant but
additionally accepts an index (u16) as input.
Since v3:
* rename BIT_UVC_CMD_RETR_SECRETS to BIT_UVC_CMD_RETR_SECRET
* Streamline list_secrets()
* Fix documentation styling issues
* Simplify conditional in find_secret()
* Add r-b from Christoph
Since v2:
* Simplify conditionals
* Fix documentation issues
* Simplify list_secrets()
* Add r-b from Christoph
Since v1:
* Add various r-b's
* Fix nits and minor issues
Steffen Eiden (6):
s390/boot/uv.c: Use a constant for more-data rc
s390/uv: Retrieve UV secrets support
s390/uvdevice: Add Retrieve Secret IOCTL
s390/uvdevice: Increase indent in IOCTL definitions
s390/uvdevice: Add List Secrets Ext IOCTL
s390/uv: Retrieve UV secrets sysfs support
arch/s390/boot/uv.c | 7 +-
arch/s390/include/asm/uv.h | 146 +++++++++++++++++++++++-
arch/s390/include/uapi/asm/uvdevice.h | 36 +++---
arch/s390/kernel/uv.c | 153 ++++++++++++++++++++++++-
drivers/s390/char/uvdevice.c | 154 +++++++++++++++++++++-----
5 files changed, 442 insertions(+), 54 deletions(-)
--
2.43.0
Powered by blists - more mailing lists