diff options
| author | Boris Brezillon <boris.brezillon@collabora.com> | 2026-09-24 14:30:44 +0200 |
|---|---|---|
| committer | Liviu Dudau <liviu.dudau@arm.com> | 2026-10-16 13:20:46 +0100 |
| commit | a431d4ec5d938893060f69a018a2c47651c282d9 (patch) | |
| tree | d8f7c68a3c4804e6e5b7d53b971476c360f1d461 /tools/perf/scripts/python/stackcollapse.py | |
| parent | b1bbfb6c0245cd35ad197d290e26ee1cdee467ff (diff) | |
| download | linux-a431d4ec5d938893060f69a018a2c47651c282d9.tar.gz linux-a431d4ec5d938893060f69a018a2c47651c282d9.zip | |
drm/panthor: Fully disable the AS even if it's going to be re-assigned
We're trying to be smart by skipping the UPDATE(UNMAPPED) step, but
it remains to be proven it adds any noticeable overhead. Moreover, it's
breaking the assumption that, once the VM is unbound, no access can
happen on it.
For instance, say the panthor_mmu_as_enable() call in panthor_vm_active()
fails after we've called panthor_vm_release_as_locked(), we're now in a
state where the HW still points to the old page table, but SW slot points
to the new VM, which is not truly HW-bound.
If, after the as_slots lock is released, the evicted VM itself is
released, the HW might have access to memory that has been returned
to the system until the reset we scheduled (because of the faulty
AS_COMMAND) is effective.
Let's make this bullet-proof by doing a full bound -> unbound -> bound
cycle on AS slot recycling.
Fixes: 32e593d74c39 ("drm/panthor: Make sure caches are flushed/invalidated when an AS is recycled")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com>
Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
Link: https://patch.msgid.link/20260924-panthor-mmu-fixes-v1-2-e25f9b106466@collabora.com
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions
