OpenCloudOS-Kernel/drivers/s390/crypto
Harald Freudenberger 1f0d22defd s390/ap: Rework ap_dqap to deal with messages greater than recv buffer
Rework of the ap_dqap() inline function with the dqap inline assembler
invocation and the caller code in ap_queue.c to be able to handle
replies which exceed the receive buffer size.

ap_dqap() now provides two additional parameters to handle together
with the caller the case where a reply in the firmware queue entry
exceeds the given message buffer size. It depends on the caller how to
exactly handle this. The behavior implemented now by ap_sm_recv() in
ap_queue.c is to simple purge this entry from the firmware queue and
let the caller 'receive' a -EMSGSIZE for the request without
delivering any reply data - not even a truncated reply message.

However, the reworked ap_dqap() could now get invoked in a way that
the message is received in multiple parts and the caller assembles the
parts into one reply message.

Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
Suggested-by: Juergen Christ <jchrist@linux.ibm.com>
Reviewed-by: Juergen Christ <jchrist@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2021-07-08 15:37:27 +02:00
..
Makefile s390/zcrypt: add new low level ep11 functions support file 2020-01-30 13:07:55 +01:00
ap_bus.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
ap_bus.h s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
ap_card.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
ap_debug.h s390/ap: add error response code field for ap queue devices 2020-10-07 21:50:00 +02:00
ap_queue.c s390/ap: Rework ap_dqap to deal with messages greater than recv buffer 2021-07-08 15:37:27 +02:00
pkey_api.c s390/zcrypt/pkey: introduce zcrypt_wait_api_operational() function 2020-11-09 11:21:00 +01:00
vfio_ap_drv.c s390/vfio-ap: clean up vfio_ap_drv's definition 2021-06-07 17:07:00 +02:00
vfio_ap_ops.c s390/vfio-ap: clean up mdev resources when remove callback invoked 2021-06-21 11:19:18 +02:00
vfio_ap_private.h s390/vfio-ap: fix circular lockdep when setting/clearing crypto masks 2021-04-05 11:30:58 +02:00
zcrypt_api.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
zcrypt_api.h s390/ap/zcrypt: notify userspace with online, config and mode info 2021-06-16 23:46:18 +02:00
zcrypt_card.c s390/ap/zcrypt: notify userspace with online, config and mode info 2021-06-16 23:46:18 +02:00
zcrypt_cca_key.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_ccamisc.c s390/zcrypt: Switch to flexible array member 2021-06-28 11:18:28 +02:00
zcrypt_ccamisc.h s390/crypto: fix function/prototype mismatches 2021-06-07 17:06:58 +02:00
zcrypt_cex2a.c s390/zcrypt: convert comma to semicolon 2020-12-16 14:55:50 +01:00
zcrypt_cex2a.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex2c.c s390/zcrypt: introduce msg tracking in zcrypt functions 2020-10-07 21:49:59 +02:00
zcrypt_cex2c.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex4.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
zcrypt_cex4.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
zcrypt_debug.h s390/ap/zcrypt: revisit ap and zcrypt error handling 2020-10-07 21:50:01 +02:00
zcrypt_ep11misc.c s390/pkey: support CCA and EP11 secure ECC private keys 2020-09-24 10:03:28 +02:00
zcrypt_ep11misc.h s390/pkey: support CCA and EP11 secure ECC private keys 2020-09-24 10:03:28 +02:00
zcrypt_error.h s390/ap/zcrypt: revisit ap and zcrypt error handling 2020-10-07 21:50:01 +02:00
zcrypt_msgtype6.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
zcrypt_msgtype6.h s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
zcrypt_msgtype50.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00
zcrypt_msgtype50.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_queue.c s390/AP: support new dynamic AP bus size limit 2021-07-05 12:44:23 +02:00