mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 12:44:03 +02:00
iommu/mediatek-v1: Fix off-by-one in MT2701_LARB_NR_MAX
The mt2701_m4u_in_larb[] array contains 4 (for LARB0 to LARB3)
elements, meaning mt2701_m4u_to_larb() can legitimately return 3.
The current check `if (larbid >= MT2701_LARB_NR_MAX)` incorrectly
rejects valid LARB3 with -EINVAL.
Fix this off-by-one error by updating MT2701_LARB_NR_MAX to 4.
Note that this does not cause immediate issues with the current
mt2701.dtsi and mt7623n.dtsi because it only defines 3 LARBs:
mediatek,larbs = <&larb0 &larb1 &larb2>;
Thus, larbid never reaches 3 in the existing upstream device tree.
Fixes: de78657e16 ("iommu/mediatek: Fix NULL pointer dereference when printing dev_name")
Signed-off-by: Akari Tsuyukusa <akkun11.open@gmail.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
This commit is contained in:
parent
8cdeaa50ea
commit
aebaa93f3d
|
|
@ -88,7 +88,7 @@ struct dma_iommu_mapping {
|
|||
/* MTK generation one iommu HW only support 4K size mapping */
|
||||
#define MT2701_IOMMU_PAGE_SHIFT 12
|
||||
#define MT2701_IOMMU_PAGE_SIZE (1UL << MT2701_IOMMU_PAGE_SHIFT)
|
||||
#define MT2701_LARB_NR_MAX 3
|
||||
#define MT2701_LARB_NR_MAX 4
|
||||
|
||||
/*
|
||||
* MTK m4u support 4GB iova address space, and only support 4K page
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user