diff options
| author | Harald Freudenberger <freude@linux.ibm.com> | 2025-04-24 16:35:59 +0300 |
|---|---|---|
| committer | Heiko Carstens <hca@linux.ibm.com> | 2025-04-30 12:34:00 +0300 |
| commit | 80c20b2c6dc09296f2cfb438a7b919a55f31237e (patch) | |
| tree | 4e7bc044b33014ce9c2566d7ba01bdf15b85b4f3 /drivers/s390/crypto/ap_bus.h | |
| parent | f91bb85d399ecfa69ec08ebf58ee49d17bb748e2 (diff) | |
| download | linux-80c20b2c6dc09296f2cfb438a7b919a55f31237e.tar.xz | |
s390/ap/zcrypt: New xflag parameter
Introduce a new flag parameter for the both cprb send functions
zcrypt_send_cprb() and zcrypt_send_ep11_cprb(). This new
xflags parameter ("execution flags") shall be used to provide
execution hints and flags for this crypto request.
There are two flags implemented to be used with these functions:
* ZCRYPT_XFLAG_USERSPACE - indicates to the lower layers that
all the ptrs address userspace. So when construction the ap msg
copy_from_user() is to be used. If this flag is NOT set, the ptrs
address kernel memory and thus memcpy() is to be used.
* ZCRYPT_XFLAG_NOMEMALLOC - indicates that this task must not
allocate memory which may be allocated with io operations.
For the AP bus and zcrypt message layer this means:
* The ZCRYPT_XFLAG_USERSPACE is mapped to the already existing
bool variable "userspace" which is propagated to the zcrypt
proto implementations.
* The ZCRYPT_XFLAG_NOMEMALLOC results in setting the AP flag
AP_MSG_FLAG_MEMPOOL when the AP msg buffer is initialized.
Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
Reviewed-by: Holger Dengler <dengler@linux.ibm.com>
Link: https://lore.kernel.org/r/20250424133619.16495-6-freude@linux.ibm.com
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'drivers/s390/crypto/ap_bus.h')
| -rw-r--r-- | drivers/s390/crypto/ap_bus.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/s390/crypto/ap_bus.h b/drivers/s390/crypto/ap_bus.h index 60c41d8116ad..88b625ba1978 100644 --- a/drivers/s390/crypto/ap_bus.h +++ b/drivers/s390/crypto/ap_bus.h @@ -238,7 +238,7 @@ struct ap_message { #define AP_MSG_FLAG_ADMIN 0x0004 /* CCA, EP11: admin (=control) msg */ #define AP_MSG_FLAG_MEMPOOL 0x0008 /* ap msg buffer allocated via mempool */ -int ap_init_apmsg(struct ap_message *ap_msg, bool use_mempool); +int ap_init_apmsg(struct ap_message *ap_msg, u32 flags); void ap_release_apmsg(struct ap_message *ap_msg); enum ap_sm_wait ap_sm_event(struct ap_queue *aq, enum ap_sm_event event); |
