Re: [PATCH 1/3] iommu/vt-d: Missing checks for pasid tables if allocation fails

From: Lu Baolu
Date: Mon Nov 06 2017 - 21:57:31 EST


Hi,

On 11/07/2017 04:13 AM, Alex Williamson wrote:
> On Thu, 19 Oct 2017 08:39:14 +0800
> Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx> wrote:
>
>> intel_svm_alloc_pasid_tables() might return an error but never be
>> checked by the callers. Later when intel_svm_bind_mm() is called,
>> there are no checks for valid pasid tables before enabling them.
>>
>> Signed-off-by: Ashok Raj <ashok.raj@xxxxxxxxx>
>> Signed-off-by: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
>> ---
>> drivers/iommu/intel-svm.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/iommu/intel-svm.c b/drivers/iommu/intel-svm.c
>> index f6697e5..43280ca 100644
>> --- a/drivers/iommu/intel-svm.c
>> +++ b/drivers/iommu/intel-svm.c
>> @@ -292,7 +292,7 @@ int intel_svm_bind_mm(struct device *dev, int *pasid, int flags, struct svm_dev_
>> int pasid_max;
>> int ret;
>>
>> - if (WARN_ON(!iommu))
>> + if (WARN_ON(!iommu || !iommu->pasid_table))
>> return -EINVAL;
>>
>> if (dev_is_pci(dev)) {
> Applied series to iommu/vt-d for v4.15. Thanks,
>
> Alex
>

Thank you, Alex.

Best regards,
Lu Baolu