iommu/arm-smmu: sign extend iova for fault handler
The address in the CB's FAR is not sign-extended. With split page tables, this can cause software page table walk causing warning. WARNING: CPU: 2 PID: 264 at drivers/iommu/arm-smmu.c:3161 arm_smmu_iova_to_phys+0xfc/0x128 kgsl kgsl-3d0: CP Illegal instruction error kgsl kgsl-3d0: CP Illegal instruction error kgsl kgsl-3d0: CP Illegal instruction error kgsl kgsl-3d0: CP Illegal instruction error pc : arm_smmu_iova_to_phys+0xfc/0x128 lr : arm_smmu_context_fault+0x188/0xea4 Perform the sign extension in fault handler, as arm_smmu_iova_to_phys() expects the IOVA to be sign extended. Fixes: ff4f3466 ("iommu/arm-smmu: Add support for split page table domains") Change-Id: Iced0b7a518dbc27b2770fdae47bedce4e72cc3c1 Signed-off-by:Prakash Gupta <guptap@codeaurora.org>
Loading
Please register or sign in to comment