Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iommu/mediatek: Check return value after calling platform_get_resource()

platform_get_resource() may return NULL pointer, we need check its
return value to avoid null-ptr-deref in resource_size().

Fixes: 42d57fc58aeb ("iommu/mediatek: Initialise/Remove for multi bank dev")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com>
Link: https://lore.kernel.org/r/20221029103550.3774365-1-yangyingliang@huawei.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>

authored by

Yang Yingliang and committed by
Joerg Roedel
73b6924c 30a0b95b

+2
+2
drivers/iommu/mtk_iommu.c
··· 1173 1173 1174 1174 banks_num = data->plat_data->banks_num; 1175 1175 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 1176 + if (!res) 1177 + return -EINVAL; 1176 1178 if (resource_size(res) < banks_num * MTK_IOMMU_BANK_SZ) { 1177 1179 dev_err(dev, "banknr %d. res %pR is not enough.\n", banks_num, res); 1178 1180 return -EINVAL;