iommu/mediatek: Fix unsigned domid comparison with less than zero
authorColin Ian King <colin.king@canonical.com>
Thu, 4 Feb 2021 15:00:01 +0000 (15:00 +0000)
committerJoerg Roedel <jroedel@suse.de>
Fri, 5 Feb 2021 08:49:47 +0000 (09:49 +0100)
Currently the check for domid < 0 is always false because domid
is unsigned. Fix this by casting domid to an int before making
the comparison.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20210204150001.102672-1-colin.king@canonical.com
Addresses-Coverity: ("Unsigned comparison against 0")
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/mtk_iommu.c

index 0ad14a7..1f26262 100644 (file)
@@ -645,7 +645,7 @@ static void mtk_iommu_get_resv_regions(struct device *dev,
        struct iommu_resv_region *region;
        int prot = IOMMU_WRITE | IOMMU_READ;
 
-       if (domid < 0)
+       if ((int)domid < 0)
                return;
        curdom = data->plat_data->iova_region + domid;
        for (i = 0; i < data->plat_data->iova_region_nr; i++) {