[Nouveau] [PATCH] nouveau: Fix migrate_to_ram() for faulting page
Lyude Paul
lyude at redhat.com
Fri Oct 21 19:53:19 UTC 2022
On Wed, 2022-10-19 at 23:29 +1100, Alistair Popple wrote:
> Commit 16ce101db85d ("mm/memory.c: fix race when faulting a device private
> page") changed the migrate_to_ram() callback to take a reference on the
> device page to ensure it can't be freed while handling the fault.
> Unfortunately the corresponding update to Nouveau to accommodate this
> change was inadvertently dropped from that patch causing GPU to CPU
> migration to fail so add it here.
>
> Signed-off-by: Alistair Popple <apopple at nvidia.com>
> Fixes: 16ce101db85d ("mm/memory.c: fix race when faulting a device private page")
> Cc: John Hubbard <jhubbard at nvidia.com>
> Cc: Ralph Campbell <rcampbell at nvidia.com>
> Cc: Lyude Paul <lyude at redhat.com>
> Cc: Ben Skeggs <bskeggs at redhat.com>
>
> ---
>
> Hi Andrew/Ben, apologies I must have accidentally dropped this small hunk
> when rebasing prior to sending v2 of the original series. Without this
> migration from GPU to CPU won't work in Nouveau so hopefully one of you can
> take this for v6.1-rcX. Thanks.
Hi!
Reviewed-by: Lyude Paul <lyude at redhat.com>
I will push this to drm-misc-next in just a moment, thanks for the patch!
> ---
> drivers/gpu/drm/nouveau/nouveau_dmem.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/nouveau/nouveau_dmem.c b/drivers/gpu/drm/nouveau/nouveau_dmem.c
> index 5fe209107246..20fe53815b20 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_dmem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_dmem.c
> @@ -176,6 +176,7 @@ static vm_fault_t nouveau_dmem_migrate_to_ram(struct vm_fault *vmf)
> .src = &src,
> .dst = &dst,
> .pgmap_owner = drm->dev,
> + .fault_page = vmf->page,
> .flags = MIGRATE_VMA_SELECT_DEVICE_PRIVATE,
> };
>
--
Cheers,
Lyude Paul (she/her)
Software Engineer at Red Hat
More information about the Nouveau
mailing list