On 09/11/2023 23.53, Matthew Rosato wrote:
> If the host kernel lacks vfio DMA limit reporting, do not attempt
> to shrink the guest DMA aperture.
>
> Fixes: df202e3ff3 ("s390x/pci: shrink DMA aperture to be bound by vfio DMA limit")
> Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
> ---
> hw/s390x/s390-pci-vfio.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
> index 7218583883..22b39a7d18 100644
> --- a/hw/s390x/s390-pci-vfio.c
> +++ b/hw/s390x/s390-pci-vfio.c
> @@ -136,7 +136,7 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
> * to the guest based upon the vfio DMA limit.
> */
> vfio_size = pbdev->iommu->max_dma_limit << TARGET_PAGE_BITS;
> - if (vfio_size < (cap->end_dma - cap->start_dma + 1)) {
> + if ((vfio_size > 0) && (vfio_size < (cap->end_dma - cap->start_dma + 1))) {
Please drop the superfluous parantheses:
if (vfio_size > 0 && vfio_size < cap->end_dma - cap->start_dma + 1) {
Thanks,
Thomas
> pbdev->zpci_fn.edma = cap->start_dma + vfio_size - 1;
> }
> }