[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250723221213.36325-1-robin.clark@oss.qualcomm.com>
Date: Wed, 23 Jul 2025 15:12:10 -0700
From: Rob Clark <robin.clark@....qualcomm.com>
To: dri-devel@...ts.freedesktop.org
Cc: linux-arm-msm@...r.kernel.org, freedreno@...ts.freedesktop.org,
Danilo Krummrich <dakr@...hat.com>,
Connor Abbott <cwabbott0@...il.com>,
Rob Clark <robin.clark@....qualcomm.com>,
Abhinav Kumar <abhinav.kumar@...ux.dev>,
Danilo Krummrich <dakr@...nel.org>, David Airlie <airlied@...il.com>,
Dmitry Baryshkov <lumag@...nel.org>,
Jessica Zhang <jessica.zhang@....qualcomm.com>,
linux-kernel@...r.kernel.org (open list),
Lyude Paul <lyude@...hat.com>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Marijn Suijten <marijn.suijten@...ainline.org>,
Maxime Ripard <mripard@...nel.org>,
nouveau@...ts.freedesktop.org (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS),
Sean Paul <sean@...rly.run>, Simona Vetter <simona@...ll.ch>,
Thomas Zimmermann <tzimmermann@...e.de>
Subject: [PATCH 0/2] drm/gpuvm+msm: Handle in-place remaps
turnip+msm uses a DUMP flag on the gpuva to indicate VA ranges to dump
(ie. for devcoredump). In most cases (internal BOs like shader
instructions) this is known at the time the BO is MAPd, and the DUMP
flag can be set at the same time as the BO is initially bound into the
VM. But for descriptor buffers, this isn't known until VkBuffer is
bound to the already mapped VkDeviceMemory, requiring an atomic remap
to set the flag.
The problem is that drmvm turns this into discreet unmap and remap
steps. So there is a window where the VA is not mapped, which can
race with cmdstream exec (SUBMIT).
This series attempts to avoid that by turning an exact-remap into a
remap op instead, where the driver can handle the special case since
it can see both the unmap and map steps at the same time.
Rob Clark (2):
drm/gpuvm: Send in-place re-maps to the driver as remap
drm/msm: Handle in-place remaps
drivers/gpu/drm/drm_gpuvm.c | 21 +++++++++++++++++++++
drivers/gpu/drm/msm/msm_gem_vma.c | 17 +++++++++++++++--
drivers/gpu/drm/nouveau/nouveau_uvmm.c | 3 ++-
3 files changed, 38 insertions(+), 3 deletions(-)
--
2.50.1
Powered by blists - more mailing lists