linux/drivers/s390/crypto
Rorie Reyes 07d89045bf s390/vfio-ap: Signal eventfd when guest AP configuration is changed
In this patch, an eventfd object is created by the vfio_ap device driver
and used to notify userspace when a guests's AP configuration is
dynamically changed. Such changes may occur whenever:

* An adapter, domain or control domain is assigned to or unassigned from a
  mediated device that is attached to the guest.
* A queue assigned to the mediated device that is attached to a guest is
  bound to or unbound from the vfio_ap device driver. This can occur
  either by manually binding/unbinding the queue via the vfio_ap driver's
  sysfs bind/unbind attribute interfaces, or because an adapter, domain or
  control domain assigned to the mediated device is added to or removed
  from the host's AP configuration via an SE/HMC

The purpose of this patch is to provide immediate notification of changes
made to a guest's AP configuration by the vfio_ap driver. This will enable
the guest to take immediate action rather than relying on polling or some
other inefficient mechanism to detect changes to its AP configuration.

Note that there are corresponding QEMU patches that will be shipped along
with this patch (see vfio-ap: Report vfio-ap configuration changes) that
will pick up the eventfd signal.

Signed-off-by: Rorie Reyes <rreyes@linux.ibm.com>
Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
Tested-by: Anthony Krowiak <akrowiak@linux.ibm.com>
Link: https://lore.kernel.org/r/20250107183645.90082-1-rreyes@linux.ibm.com
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2025-02-18 18:53:48 +01:00
..
ap_bus.c s390/ap: Replace xchg() with WRITE_ONCE() 2024-11-27 12:55:15 +01:00
ap_bus.h s390/ap: Fix CCA crypto card behavior within protected execution environment 2024-10-10 15:31:55 +02:00
ap_card.c s390/ap: store TAPQ hwinfo in struct ap_card 2023-11-30 16:24:23 +01:00
ap_debug.h s390/zcrypt: introduce dynamic debugging for AP and zcrypt code 2024-02-16 14:30:12 +01:00
ap_queue.c s390/ap: Fix CCA crypto card behavior within protected execution environment 2024-10-10 15:31:55 +02:00
Makefile s390/pkey: Add new pkey handler module pkey-uv 2024-10-29 11:17:18 +01:00
pkey_api.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
pkey_base.c s390/pkey: Add new pkey handler module pkey-uv 2024-10-29 11:17:18 +01:00
pkey_base.h s390/pkey: Simplify protected key length calculation code 2024-10-29 11:17:17 +01:00
pkey_cca.c s390/pkey: Tolerate larger key blobs 2024-10-29 11:17:19 +01:00
pkey_ep11.c s390/zcrypt: Cleanup include zcrypt_api.h 2024-10-29 11:17:17 +01:00
pkey_pckmo.c s390 updates for 6.13 merge window 2024-11-18 17:45:41 -08:00
pkey_sysfs.c s390/pkey: Constify 'struct bin_attribute' 2025-01-07 10:05:36 +01:00
pkey_uv.c s390/pkey: Add new pkey handler module pkey-uv 2024-10-29 11:17:18 +01:00
vfio_ap_debug.h s390-vfio-ap: introduces s390 kernel debug feature for vfio_ap device driver 2022-02-06 23:31:29 +01:00
vfio_ap_drv.c s390/vfio-ap: Driver feature advertisement 2024-09-23 17:57:04 +02:00
vfio_ap_ops.c s390/vfio-ap: Signal eventfd when guest AP configuration is changed 2025-02-18 18:53:48 +01:00
vfio_ap_private.h s390/vfio-ap: Signal eventfd when guest AP configuration is changed 2025-02-18 18:53:48 +01:00
zcrypt_api.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
zcrypt_api.h s390/zcrypt: improve zcrypt retry behavior 2024-03-07 14:41:15 +01:00
zcrypt_card.c s390/zcrypt: don't report online if card or queue is in check-stop state 2023-11-05 22:34:57 +01:00
zcrypt_cca_key.h s390/zcrypt: rework arrays with length zero occurrences 2023-04-19 16:47:31 +02:00
zcrypt_ccamisc.c s390/pkey: Rework and split PKEY kernel module code 2024-08-29 22:56:33 +02:00
zcrypt_ccamisc.h s390/zcrypt: Cleanup include zcrypt_api.h 2024-10-29 11:17:17 +01:00
zcrypt_cex2a.c s390/zcrypt: remove CEX2 and CEX3 device drivers 2023-07-24 12:12:22 +02:00
zcrypt_cex2a.h s390/zcrypt: remove CEX2 and CEX3 device drivers 2023-07-24 12:12:22 +02:00
zcrypt_cex2c.c s390/zcrypt: remove CEX2 and CEX3 device drivers 2023-07-24 12:12:22 +02:00
zcrypt_cex2c.h s390/zcrypt: remove CEX2 and CEX3 device drivers 2023-07-24 12:12:22 +02:00
zcrypt_cex4.c s390/ap: store TAPQ hwinfo in struct ap_card 2023-11-30 16:24:23 +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 s390/zcrypt: introduce dynamic debugging for AP and zcrypt code 2024-02-16 14:30:12 +01:00
zcrypt_ep11misc.c s390/pkey: Rework and split PKEY kernel module code 2024-08-29 22:56:33 +02:00
zcrypt_ep11misc.h s390/pkey: Rework and split PKEY kernel module code 2024-08-29 22:56:33 +02:00
zcrypt_error.h s390/zcrypt: improve zcrypt retry behavior 2024-03-07 14:41:15 +01:00
zcrypt_msgtype6.c s390/zcrypt_msgtype6: Cleanup debug code 2024-08-21 16:17:01 +02:00
zcrypt_msgtype6.h s390/zcrypt: code cleanup 2022-04-25 13:54:14 +02:00
zcrypt_msgtype50.c s390/zcrypt_msgtype50: Cleanup debug code 2024-08-21 16:17:01 +02:00
zcrypt_msgtype50.h s390/zcrypt: remove CEX2 and CEX3 device drivers 2023-07-24 12:12:22 +02:00
zcrypt_queue.c s390/zcrypt: don't report online if card or queue is in check-stop state 2023-11-05 22:34:57 +01:00