]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/panthor: Add support for atomic page table updates
authorBoris Brezillon <boris.brezillon@collabora.com>
Fri, 28 Nov 2025 08:48:38 +0000 (09:48 +0100)
committerBoris Brezillon <boris.brezillon@collabora.com>
Fri, 28 Nov 2025 09:17:44 +0000 (10:17 +0100)
commit6e2d3b3e858942de4dbffffe3a617e80b1262f74
treed5adf1446c4aecd4d5005bd5021bdf1cb3bbd541
parent3c0a60195b37af83bbbaf223cd3a78945bace49e
drm/panthor: Add support for atomic page table updates

Move the lock/flush_mem operations around the gpuvm_sm_[un]map() calls
so we can implement true atomic page updates, where any access in the
locked range done by the GPU has to wait for the page table updates
to land before proceeding.

This is needed for vkQueueBindSparse(), so we can replace the dummy
page mapped over the entire object by actual BO backed pages in an atomic
way. But it's also useful to avoid "AS_ACTIVE bit stuck" failures in
the sm_[un]map() path, leading to gpuvm state inconsistencies.

v2:
- Adjust to match the two new preliminary patches

v3:
- Collect R-b

v4:
- No changes

Reviewed-by: Steven Price <steven.price@arm.com>
Link: https://patch.msgid.link/20251128084841.3804658-5-boris.brezillon@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
drivers/gpu/drm/panthor/panthor_mmu.c