]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
drm/msm: Wire up tlb ops
authorRob Clark <robdclark@chromium.org>
Tue, 13 Feb 2024 17:23:40 +0000 (09:23 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 Feb 2024 08:25:07 +0000 (09:25 +0100)
commitc96a494c9b0fe257fc8a5f2a047d3eb46f02773a
tree11f1ff387020950371650da8cd084407c175251d
parent6cef4e68777be8ecb9c78bacea2fc7b5c94ebeb6
drm/msm: Wire up tlb ops

commit 8c7bfd8262319fd3f127a5380f593ea76f1b88a2 upstream.

The brute force iommu_flush_iotlb_all() was good enough for unmap, but
in some cases a map operation could require removing a table pte entry
to replace with a block entry.  This also requires tlb invalidation.
Missing this was resulting an obscure iova fault on what should be a
valid buffer address.

Thanks to Robin Murphy for helping me understand the cause of the fault.

Cc: Robin Murphy <robin.murphy@arm.com>
Cc: stable@vger.kernel.org
Fixes: b145c6e65eb0 ("drm/msm: Add support to create a local pagetable")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/578117/
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/msm/msm_iommu.c