[PATCH v6 0/6] KVM s390x PCI fixes

Farhan Ali posted 6 patches 5 hours ago
arch/s390/kvm/pci.c | 107 +++++++++++++++++++++++++++++++++++---------
arch/s390/kvm/pci.h |   2 +
2 files changed, 88 insertions(+), 21 deletions(-)
[PATCH v6 0/6] KVM s390x PCI fixes
Posted by Farhan Ali 5 hours ago
Hi,

This series attempts to fix some the pre-existing issues[1] found by 
sashiko.

[1] https://lore.kernel.org/all/20260624063447.85DF51F000E9@smtp.kernel.org/

Thanks
Farhan

ChangeLog
---------
v5: https://lore.kernel.org/all/20260723183440.3271-1-alifm@linux.ibm.com/
v5 -> v6
   - Fix the AIBV calculation (patch 6).

v4: https://lore.kernel.org/all/20260722170621.1686-1-alifm@linux.ibm.com/
v4 -> v5
   - Fix off by one error (patch 6).
   - Add check for current->mm in account_mem() (patch 2).
   - Fix commit message as suggested by Matt (patch 3, 4, 5).

v3: https://lore.kernel.org/all/20260720175819.1723-1-alifm@linux.ibm.com/
v3 -> v4
   - Add validation checks for AISB/AIBV spanning more than a page.
   - Reject multiple ioctl call for the same device, if adapter interrupt
   forwarding is already enabled for the device.
   - Rebase on 7.2-rc4.

v2: https://lore.kernel.org/all/20260716175241.1039-1-alifm@linux.ibm.com/
v2 -> v3
   - Remove overwriting guest FIB since we don't use it for
   re-issue (patch 4).

v1: https://lore.kernel.org/all/20260713172600.1284-1-alifm@linux.ibm.com/
v1 -> v2
   - Drop fix handling AISB/AIBV spanning multiple pages.
   - Fix memory accounting functions for the case when interrupt forwarding
   is enabled by one process but disabled by a different process (patch 1).


Farhan Ali (6):
  KVM: s390: pci: Reject adapter interrupt forwarding if already enabled
  KVM: s390: pci: Fix memory accounting for pinned/unpinned pages
  KVM: s390: pci: Fix missing error codes and memory unaccounting
  KVM: s390: pci: Fix NULL dereference on AIBV allocation failure
  KVM: s390: pci: Fix resource leak on IRQ registration failure
  KVM: s390: pci: Validate AIBV and AISB before pinning guest pages

 arch/s390/kvm/pci.c | 107 +++++++++++++++++++++++++++++++++++---------
 arch/s390/kvm/pci.h |   2 +
 2 files changed, 88 insertions(+), 21 deletions(-)

-- 
2.43.0
Re: [PATCH v6 0/6] KVM s390x PCI fixes
Posted by Matthew Rosato 2 hours ago
On 7/23/26 6:14 PM, Farhan Ali wrote:
> Hi,
> 
> This series attempts to fix some the pre-existing issues[1] found by 
> sashiko.
> 
> [1] https://lore.kernel.org/all/20260624063447.85DF51F000E9@smtp.kernel.org/
> 
> Thanks
> Farhan
> 

Thanks for tackling these, Farhan.

Besides reviewing the code I've run a variety of tests on these last few
versions and things look good -- so if you'd like feel free to include:

Tested-by: Matthew Rosato <mjrosato@linux.ibm.com>

> ChangeLog
> ---------
> v5: https://lore.kernel.org/all/20260723183440.3271-1-alifm@linux.ibm.com/
> v5 -> v6
>    - Fix the AIBV calculation (patch 6).
> 
> v4: https://lore.kernel.org/all/20260722170621.1686-1-alifm@linux.ibm.com/
> v4 -> v5
>    - Fix off by one error (patch 6).
>    - Add check for current->mm in account_mem() (patch 2).
>    - Fix commit message as suggested by Matt (patch 3, 4, 5).
> 
> v3: https://lore.kernel.org/all/20260720175819.1723-1-alifm@linux.ibm.com/
> v3 -> v4
>    - Add validation checks for AISB/AIBV spanning more than a page.
>    - Reject multiple ioctl call for the same device, if adapter interrupt
>    forwarding is already enabled for the device.
>    - Rebase on 7.2-rc4.
> 
> v2: https://lore.kernel.org/all/20260716175241.1039-1-alifm@linux.ibm.com/
> v2 -> v3
>    - Remove overwriting guest FIB since we don't use it for
>    re-issue (patch 4).
> 
> v1: https://lore.kernel.org/all/20260713172600.1284-1-alifm@linux.ibm.com/
> v1 -> v2
>    - Drop fix handling AISB/AIBV spanning multiple pages.
>    - Fix memory accounting functions for the case when interrupt forwarding
>    is enabled by one process but disabled by a different process (patch 1).
> 
> 
> Farhan Ali (6):
>   KVM: s390: pci: Reject adapter interrupt forwarding if already enabled
>   KVM: s390: pci: Fix memory accounting for pinned/unpinned pages
>   KVM: s390: pci: Fix missing error codes and memory unaccounting
>   KVM: s390: pci: Fix NULL dereference on AIBV allocation failure
>   KVM: s390: pci: Fix resource leak on IRQ registration failure
>   KVM: s390: pci: Validate AIBV and AISB before pinning guest pages
> 
>  arch/s390/kvm/pci.c | 107 +++++++++++++++++++++++++++++++++++---------
>  arch/s390/kvm/pci.h |   2 +
>  2 files changed, 88 insertions(+), 21 deletions(-)
>