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

Thomas Huth
2021-12-08T10:04:54Z

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@linux.ibm.com>
> ---
[...]
> 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