FAILED: patch "[PATCH] drm/nouveau/kms/nv50: fix double dma_fence_put() when" failed to apply to 4.11-stable tree
Subsystems (4)
[email protected]
maintainerThe patch below does not apply to the 4.11-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
df60d1f23b09c5ce2a8e404012323d4deedcc589Mon Sep 17 00:00:00 2001
From: Ben Skeggs <[email protected]>
Date: Wed, 5 Apr 2017 18:16:14 +1000
Subject: [PATCH] drm/nouveau/kms/nv50: fix double dma_fence_put() when
destroying plane state
When the atomic support was added to nouveau, the DRM core did not do this.
However, later in the same merge window, a commit (drm/fence: add in-fences support) was merged that added it, leading to use-after-frees of the fence object.
drivers/gpu/drm/nouveau/nv50_display.c +0 -2
@@ -1002,7 +1002,6 @@ nv50_wndw_atomic_destroy_state(struct drm_plane *plane, {struct nv50_wndw_atom *asyw =nv50_wndw_atom (state);__drm_atomic_helper_plane_destroy_state (&asyw->state); -dma_fence_put (asyw->state.fence);kfree (asyw); }
@@ -1014,7 +1013,6 @@ nv50_wndw_atomic_duplicate_state(struct drm_plane *plane)if (!(asyw =kmalloc (sizeof (*asyw),GFP_KERNEL )))return NULL ;__drm_atomic_helper_plane_duplicate_state (plane, &asyw->state); - asyw->state.fence =NULL ; asyw->interval =1 ; asyw->sema = armw->sema; asyw->ntfy = armw->ntfy;