From: Ville Syrjälä <[email protected]>

We don't generally want fetch_and_zero() on the display side, so
stop using it in the display side intel_overlay_cleanup().
Fortunately we don't really have anything to do here apart from
freeing the data. And we'll keep on clearing the pointer, just
in case something somewhere cares about it.

v2: Adjust the commit message since we do apparently
    have fetch_and_zero() in display code as well (Jani)

Reviewed-by: Jani Nikula <[email protected]>
Signed-off-by: Ville Syrjälä <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_overlay.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_overlay.c 
b/drivers/gpu/drm/i915/display/intel_overlay.c
index 10a235ce608e..26ea7e9f4283 100644
--- a/drivers/gpu/drm/i915/display/intel_overlay.c
+++ b/drivers/gpu/drm/i915/display/intel_overlay.c
@@ -1554,13 +1554,8 @@ static void i915_overlay_cleanup(struct drm_device *drm)
 
 void intel_overlay_cleanup(struct intel_display *display)
 {
-       struct intel_overlay *overlay;
-
-       overlay = fetch_and_zero(&display->overlay);
-       if (!overlay)
-               return;
-
        i915_overlay_cleanup(display->drm);
 
-       kfree(overlay);
+       kfree(display->overlay);
+       display->overlay = NULL;
 }
-- 
2.52.0

Reply via email to