Re: [PATCH 06/32] s390/airq: allow for airq structure that uses an input vector

From: Thomas Huth
Date: Wed Dec 08 2021 - 05:04:58 EST


On 07/12/2021 21.57, Matthew Rosato wrote:
When doing device passthrough where interrupts are being forwarded
from host to guest, we wish to use a pinned section of guest memory
as the vector (the same memory used by the guest as the vector).

Signed-off-by: Matthew Rosato <mjrosato@xxxxxxxxxxxxx>
---
[...]
diff --git a/arch/s390/pci/pci_irq.c b/arch/s390/pci/pci_irq.c
index 880bcd73f11a..dfd4f3276a6d 100644
--- a/arch/s390/pci/pci_irq.c
+++ b/arch/s390/pci/pci_irq.c
[...]
@@ -443,7 +443,7 @@ static int __init zpci_directed_irq_init(void)
zpci_ibv[cpu] = airq_iv_create(cache_line_size() * BITS_PER_BYTE,
AIRQ_IV_DATA |
AIRQ_IV_CACHELINE |
- (!cpu ? AIRQ_IV_ALLOC : 0));
+ (!cpu ? AIRQ_IV_ALLOC : 0), 0);

Nit: Indentation changed

diff --git a/drivers/s390/virtio/virtio_ccw.c b/drivers/s390/virtio/virtio_ccw.c
index 52c376d15978..ff84f45587be 100644
--- a/drivers/s390/virtio/virtio_ccw.c
+++ b/drivers/s390/virtio/virtio_ccw.c
@@ -241,7 +241,7 @@ static struct airq_info *new_airq_info(int index)
return NULL;
rwlock_init(&info->lock);
info->aiv = airq_iv_create(VIRTIO_IV_BITS, AIRQ_IV_ALLOC | AIRQ_IV_PTR
- | AIRQ_IV_CACHELINE);
+ | AIRQ_IV_CACHELINE, 0);

dito

if (!info->aiv) {
kfree(info);
return NULL;


Thomas