[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9df849f6-dd99-93ea-8e35-3daffd38e694@linux.ibm.com>
Date: Tue, 25 Jan 2022 13:23:10 +0100
From: Pierre Morel <pmorel@...ux.ibm.com>
To: Matthew Rosato <mjrosato@...ux.ibm.com>, linux-s390@...r.kernel.org
Cc: alex.williamson@...hat.com, cohuck@...hat.com,
schnelle@...ux.ibm.com, farman@...ux.ibm.com,
borntraeger@...ux.ibm.com, hca@...ux.ibm.com, gor@...ux.ibm.com,
gerald.schaefer@...ux.ibm.com, agordeev@...ux.ibm.com,
frankja@...ux.ibm.com, david@...hat.com, imbrenda@...ux.ibm.com,
vneethv@...ux.ibm.com, oberpar@...ux.ibm.com, freude@...ux.ibm.com,
thuth@...hat.com, pasic@...ux.ibm.com, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 15/30] KVM: s390: pci: do initial setup for AEN
interpretation
On 1/14/22 21:31, Matthew Rosato wrote:
> Initial setup for Adapter Event Notification Interpretation for zPCI
> passthrough devices. Specifically, allocate a structure for forwarding of
> adapter events and pass the address of this structure to firmware.
>
> Signed-off-by: Matthew Rosato <mjrosato@...ux.ibm.com>
> ---
> arch/s390/include/asm/pci.h | 4 +
> arch/s390/include/asm/pci_insn.h | 12 +++
> arch/s390/kvm/interrupt.c | 14 +++
> arch/s390/kvm/kvm-s390.c | 9 ++
> arch/s390/kvm/pci.c | 144 +++++++++++++++++++++++++++++++
> arch/s390/kvm/pci.h | 42 +++++++++
> arch/s390/pci/pci.c | 6 ++
> 7 files changed, 231 insertions(+)
> create mode 100644 arch/s390/kvm/pci.h
>
...snip...
> new file mode 100644
> index 000000000000..b2000ed7b8c3
> --- /dev/null
> +++ b/arch/s390/kvm/pci.h
> @@ -0,0 +1,42 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * s390 kvm PCI passthrough support
> + *
> + * Copyright IBM Corp. 2021
> + *
> + * Author(s): Matthew Rosato <mjrosato@...ux.ibm.com>
> + */
> +
> +#ifndef __KVM_S390_PCI_H
> +#define __KVM_S390_PCI_H
> +
> +#include <linux/pci.h>
> +#include <linux/mutex.h>
> +#include <asm/airq.h>
> +#include <asm/kvm_pci.h>
> +
> +struct zpci_gaite {
> + u32 gisa;
> + u8 gisc;
> + u8 count;
> + u8 reserved;
> + u8 aisbo;
> + u64 aisb;
> +};
> +
> +struct zpci_aift {
> + struct zpci_gaite *gait;
> + struct airq_iv *sbv;
> + struct kvm_zdev **kzdev;
> + spinlock_t gait_lock; /* Protects the gait, used during AEN forward */
> + struct mutex lock; /* Protects the other structures in aift */
To facilitate review and debug, can we please rename the lock aift_lock?
> +};
> +
> +extern struct zpci_aift *aift;
> +
...snip...
--
Pierre Morel
IBM Lab Boeblingen
Powered by blists - more mailing lists