diff options
author | Tony Krowiak <akrowiak@linux.ibm.com> | 2023-11-08 21:11:30 +0100 |
---|---|---|
committer | Alexander Gordeev <agordeev@linux.ibm.com> | 2023-11-30 16:24:23 +0100 |
commit | a0d8f4eeb7c4ffaee21702bcc91a09b3988c5b7a (patch) | |
tree | 0b9ed04f1c958c2dae979f870769a6122e7c38da /drivers/s390/crypto/ap_queue.c | |
parent | s390/vfio-ap: improve reaction to response code 07 from PQAP(AQIC) command (diff) | |
download | linux-a0d8f4eeb7c4ffaee21702bcc91a09b3988c5b7a.tar.xz linux-a0d8f4eeb7c4ffaee21702bcc91a09b3988c5b7a.zip |
s390/vfio-ap: fix sysfs status attribute for AP queue devices
The 'status' attribute for AP queue devices bound to the vfio_ap device
driver displays incorrect status when the mediated device is attached to a
guest, but the queue device is not passed through. In the current
implementation, the status displayed is 'in_use' which is not correct; it
should be 'assigned'. This can happen if one of the queue devices
associated with a given adapter is not bound to the vfio_ap device driver.
For example:
Queues listed in /sys/bus/ap/drivers/vfio_ap:
14.0005
14.0006
14.000d
16.0006
16.000d
Queues listed in /sys/devices/vfio_ap/matrix/$UUID/matrix
14.0005
14.0006
14.000d
16.0005
16.0006
16.000d
Queues listed in /sys/devices/vfio_ap/matrix/$UUID/guest_matrix
14.0005
14.0006
14.000d
The reason no queues for adapter 0x16 are listed in the guest_matrix is
because queue 16.0005 is not bound to the vfio_ap device driver, so no
queue associated with the adapter is passed through to the guest;
therefore, each queue device for adapter 0x16 should display 'assigned'
instead of 'in_use', because those queues are not in use by a guest, but
only assigned to the mediated device.
Let's check the AP configuration for the guest to determine whether a
queue device is passed through before displaying a status of 'in_use'.
Signed-off-by: Tony Krowiak <akrowiak@linux.ibm.com>
Acked-by: Halil Pasic <pasic@linux.ibm.com>
Acked-by: Harald Freudenberger <freude@linux.ibm.com>
Link: https://lore.kernel.org/r/20231108201135.351419-1-akrowiak@linux.ibm.com
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Diffstat (limited to 'drivers/s390/crypto/ap_queue.c')
0 files changed, 0 insertions, 0 deletions