iommu/amd: Fix error path in amd_iommu_probe_device()
Currently, the error path of amd_iommu_probe_device() unconditionally
references dev_data, which may not be initialized if an early failure
occurs (like iommu_init_device() fails).
Move the out_err label to ensure the function exits immediately on
failure without accessing potentially uninitialized dev_data.
Fixes: 19e5cc156c ("iommu/amd: Enable support for up to 2K interrupts per function")
Cc: Rakuram Eswaran <rakuram.e96@gmail.com>
Cc: Jörg Rödel <joro@8bytes.org>
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202512191724.meqJENXe-lkp@intel.com/
Signed-off-by: Vasant Hegde <vasant.hegde@amd.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
This commit is contained in:
parent
0f61b1860c
commit
3222b6de51
|
|
@ -2450,8 +2450,6 @@ static struct iommu_device *amd_iommu_probe_device(struct device *dev)
|
|||
goto out_err;
|
||||
}
|
||||
|
||||
out_err:
|
||||
|
||||
iommu_completion_wait(iommu);
|
||||
|
||||
if (FEATURE_NUM_INT_REMAP_SUP_2K(amd_iommu_efr2))
|
||||
|
|
@ -2462,6 +2460,7 @@ out_err:
|
|||
if (dev_is_pci(dev))
|
||||
pci_prepare_ats(to_pci_dev(dev), PAGE_SHIFT);
|
||||
|
||||
out_err:
|
||||
return iommu_dev;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue