[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aJ8FbvCJEOj2XjT-@8bytes.org>
Date: Fri, 15 Aug 2025 12:01:18 +0200
From: Joerg Roedel <joro@...tes.org>
To: XianLiang Huang <huangxianliang@...xincomputing.com>
Cc: tjeznach@...osinc.com, markus.elfring@....de, will@...nel.org,
robin.murphy@....com, paul.walmsley@...ive.com, palmer@...belt.com,
aou@...s.berkeley.edu, alex@...ti.fr, iommu@...ts.linux.dev,
linux-riscv@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3] iommu/riscv: prevent NULL deref in iova_to_phys
On Fri, Aug 15, 2025 at 03:12:44PM +0800, XianLiang Huang wrote:
> diff --git a/drivers/iommu/riscv/iommu.c b/drivers/iommu/riscv/iommu.c
> index 2d0d31ba2886..0eae2f4bdc5e 100644
> --- a/drivers/iommu/riscv/iommu.c
> +++ b/drivers/iommu/riscv/iommu.c
> @@ -1283,7 +1283,7 @@ static phys_addr_t riscv_iommu_iova_to_phys(struct iommu_domain *iommu_domain,
> unsigned long *ptr;
>
> ptr = riscv_iommu_pte_fetch(domain, iova, &pte_size);
> - if (_io_pte_none(*ptr) || !_io_pte_present(*ptr))
> + if (!ptr)
> return 0;
Zero is usually not an invalid physical address, or is it on RISC-V?
-Joerg
Powered by blists - more mailing lists