> -----Original Message-----
> From: Jonathan Cameron <[email protected]>
> Sent: 29 September 2025 17:51
> To: Shameer Kolothum <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; Jason Gunthorpe
> <[email protected]>; Nicolin Chen <[email protected]>; [email protected];
> [email protected]; Nathan Chen <[email protected]>; Matt Ochs
> <[email protected]>; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]
> Subject: Re: [PATCH v4 12/27] hw/arm/smmuv3-accel: Make use of
> get_msi_address_space() callback
> 
> External email: Use caution opening links or attachments
> 
> 
> On Mon, 29 Sep 2025 14:36:28 +0100
> Shameer Kolothum <[email protected]> wrote:
> 
> > Here we return the IOMMU address space if the device has S1 translation
> > enabled by Guest. Otherwise return system address space.
> >
> > Signed-off-by: Shameer Kolothum
> <[email protected]>
> > Signed-off-by: Shameer Kolothum <[email protected]>
> Naming question inline.
> 
> > ---
> >  hw/arm/smmuv3-accel.c | 21 +++++++++++++++++++++
> >  1 file changed, 21 insertions(+)
> >
> > diff --git a/hw/arm/smmuv3-accel.c b/hw/arm/smmuv3-accel.c
> > index 790887ac31..f4e01fba6d 100644
> > --- a/hw/arm/smmuv3-accel.c
> > +++ b/hw/arm/smmuv3-accel.c
> > @@ -387,6 +387,26 @@ static void
> smmuv3_accel_unset_iommu_device(PCIBus *bus, void *opaque,
> >      }
> >  }
> >
> > +static AddressSpace *smmuv3_accel_find_msi_as(PCIBus *bus, void
> *opaque,
> 
> Why find rather than get for naming?

I just followed the get_address_space() convention. Will revisit.

Thanks,
Shameer
> 
> > +                                              int devfn)
> > +{
> > +    SMMUState *bs = opaque;
> > +    SMMUPciBus *sbus = smmu_get_sbus(bs, bus);
> > +    SMMUv3AccelDevice *accel_dev = smmuv3_accel_get_dev(bs, sbus, bus,
> devfn);
> > +    SMMUDevice *sdev = &accel_dev->sdev;
> > +
> > +    /*
> > +     * If the assigned vfio-pci dev has S1 translation enabled by
> > +     * Guest, return IOMMU address space for MSI translation.
> > +     * Otherwise, return system address space.
> > +     */
> > +    if (accel_dev->s1_hwpt) {
> > +        return &sdev->as;
> > +    } else {
> > +        return &address_space_memory;
> > +    }
> > +}
> > +
> >  static bool smmuv3_accel_pdev_allowed(PCIDevice *pdev, bool *vfio_pci)
> >  {
> >
> > @@ -475,6 +495,7 @@ static const PCIIOMMUOps smmuv3_accel_ops = {
> >      .get_viommu_flags = smmuv3_accel_get_viommu_flags,
> >      .set_iommu_device = smmuv3_accel_set_iommu_device,
> >      .unset_iommu_device = smmuv3_accel_unset_iommu_device,
> > +    .get_msi_address_space = smmuv3_accel_find_msi_as,
> >  };
> >
> >  void smmuv3_accel_init(SMMUv3State *s)


Reply via email to