[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <78bee047-ab33-4d81-6f77-af4c5b6e8aaa@huawei.com>
Date: Wed, 25 Nov 2020 09:54:34 +0800
From: Yang Yingliang <yangyingliang@...wei.com>
To: Will Deacon <will@...nel.org>
CC: Lu Baolu <baolu.lu@...ux.intel.com>,
<iommu@...ts.linux-foundation.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] iommu: fix return error code in iommu_probe_device()
On 2020/11/18 6:41, Will Deacon wrote:
> On Tue, Nov 17, 2020 at 07:11:28PM +0800, Yang Yingliang wrote:
>> On 2020/11/17 17:40, Lu Baolu wrote:
>>> On 2020/11/17 10:52, Yang Yingliang wrote:
>>>> If iommu_group_get() failed, it need return error code
>>>> in iommu_probe_device().
>>>>
>>>> Fixes: cf193888bfbd ("iommu: Move new probe_device path...")
>>>> Reported-by: Hulk Robot <hulkci@...wei.com>
>>>> Signed-off-by: Yang Yingliang <yangyingliang@...wei.com>
>>>> ---
>>>> drivers/iommu/iommu.c | 4 +++-
>>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
>>>> index b53446bb8c6b..6f4a32df90f6 100644
>>>> --- a/drivers/iommu/iommu.c
>>>> +++ b/drivers/iommu/iommu.c
>>>> @@ -253,8 +253,10 @@ int iommu_probe_device(struct device *dev)
>>>> goto err_out;
>>>> group = iommu_group_get(dev);
>>>> - if (!group)
>>>> + if (!group) {
>>>> + ret = -ENODEV;
>>> Can you please explain why you use -ENODEV here?
>> Before 79659190ee97 ("iommu: Don't take group reference in
>> iommu_alloc_default_domain()"), in
>>
>> iommu_alloc_default_domain(), if group is NULL, it will return -ENODEV.
> Hmm. While I think the patch is ok, I'm not sure it qualifies as a fix.
> Has iommu_probe_device() ever propagated this error? The commit you
> identify in the 'Fixes:' tag doesn't seem to change this afaict.
I think after this commit 439945e74a4b ("iommu: Move default domain
allocation to iommu_probe_device()"),
iommu_probe_device() won't return error code if group is NULL. I can add
this fix tag in v2.
>
> Will
> .
Powered by blists - more mailing lists