OpenCloudOS-Kernel/drivers/s390/crypto
Harald Freudenberger 7379e65279 s390/zcrypt: Fix wrong dispatching for control domain CPRBs
The zcrypt device driver does not handle CPRBs which address
a control domain correctly. This fix introduces a workaround:
The domain field of the request CPRB is checked if there is
a valid domain value in there. If this is true and the value
is a control only domain (a domain which is enabled in the
crypto config ADM mask but disabled in the AQM mask) the
CPRB is forwarded to the default usage domain. If there is
no default domain, the request is rejected with an ENODEV.

This fix is important for maintaining crypto adapters. For
example one LPAR can use a crypto adapter domain ('Control
and Usage') but another LPAR needs to be able to maintain
this adapter domain ('Control'). Scenarios like this did
not work properly and the patch enables this.

Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
2019-05-28 14:49:38 +02:00
..
Makefile KVM updates for v4.20 2018-10-25 17:57:35 -07:00
ap_bus.c s390/zcrypt: Fix wrong dispatching for control domain CPRBs 2019-05-28 14:49:38 +02:00
ap_bus.h s390/zcrypt: Fix wrong dispatching for control domain CPRBs 2019-05-28 14:49:38 +02:00
ap_card.c s390/zcrypt: code beautify 2018-08-20 16:02:11 +02:00
ap_debug.h s390/zcrypt: Make ap init functions static. 2018-04-10 07:39:01 +02:00
ap_queue.c s390/zcrypt: fix possible deadlock situation on ap queue remove 2019-04-10 17:46:24 +02:00
pkey_api.c s390/pkey: add one more argument space for debug feature entry 2019-04-15 09:25:15 +02:00
vfio_ap_drv.c s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem 2019-02-22 09:20:01 +01:00
vfio_ap_ops.c s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem 2019-02-22 09:20:01 +01:00
vfio_ap_private.h s390: vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem 2019-02-22 09:20:01 +01:00
zcrypt_api.c s390/zcrypt: Fix wrong dispatching for control domain CPRBs 2019-05-28 14:49:38 +02:00
zcrypt_api.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_card.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cca_key.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex2a.c s390/zcrypt: reinit ap queue state machine during device probe 2018-11-27 10:43:35 +01:00
zcrypt_cex2a.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex2c.c s390/zcrypt: reinit ap queue state machine during device probe 2018-11-27 10:43:35 +01:00
zcrypt_cex2c.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex4.c s390/zcrypt: reinit ap queue state machine during device probe 2018-11-27 10:43:35 +01: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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
zcrypt_error.h s390/zcrypt: improve special ap message cmd handling 2018-11-30 07:22:05 +01:00
zcrypt_msgtype6.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_msgtype6.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_msgtype50.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_msgtype50.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_queue.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00