RE: [PATCH v2 05/12] iommu: Change the return value of dev_iommu_get()
From: Tian, Kevin
Date: Thu Aug 03 2023 - 23:56:10 EST
> From: Baolu Lu <baolu.lu@xxxxxxxxxxxxxxx>
> Sent: Friday, August 4, 2023 11:10 AM
>
> On 2023/8/3 15:59, Tian, Kevin wrote:
> >> From: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
> >> Sent: Thursday, July 27, 2023 1:49 PM
> >>
> >> Make dev_iommu_get() return 0 for success and error numbers for failure.
> >> This will make the code neat and readable. No functionality changes.
> >>
> >> Reviewed-by: Jacob Pan <jacob.jun.pan@xxxxxxxxxxxxxxx>
> >> Signed-off-by: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
> >> ---
> >> drivers/iommu/iommu.c | 19 +++++++++++--------
> >> 1 file changed, 11 insertions(+), 8 deletions(-)
> >>
> >> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
> >> index 00309f66153b..4ba3bb692993 100644
> >> --- a/drivers/iommu/iommu.c
> >> +++ b/drivers/iommu/iommu.c
> >> @@ -290,20 +290,20 @@ void iommu_device_unregister(struct
> >> iommu_device *iommu)
> >> }
> >> EXPORT_SYMBOL_GPL(iommu_device_unregister);
> >>
> >> -static struct dev_iommu *dev_iommu_get(struct device *dev)
> >> +static int dev_iommu_get(struct device *dev)
> >> {
> >> struct dev_iommu *param = dev->iommu;
> >>
> >> if (param)
> >> - return param;
> >> + return 0;
> >>
> >> param = kzalloc(sizeof(*param), GFP_KERNEL);
> >> if (!param)
> >> - return NULL;
> >> + return -ENOMEM;
> >>
> >> mutex_init(¶m->lock);
> >> dev->iommu = param;
> >> - return param;
> >> + return 0;
> >> }
> >>
> >
> > Jason's series [1] has been queued. Time to refine according to
> > the discussion in [2].
> >
> > [1] https://lore.kernel.org/linux-iommu/ZLFYXlSBZrlxFpHM@xxxxxxxxxx/
> > [2] https://lore.kernel.org/linux-iommu/c815fa2b-00df-91e1-8353-
> 8258773957e4@xxxxxxxxxxxxxxx/
>
> I'm not sure I understand your point here. This only changes the return
> value of dev_iommu_get() to make the code more concise.
>
I thought the purpose of this patch was to prepare for next patch which
moves dev->fault_param initialization to dev_iommu_get().
with Jason's rework IMHO that initialization more fits in iommu_init_device().
that's my real point. If you still want to clean up dev_iommu_get() it's fine
but then it may not belong to this series. 😊