drm/udl: use drm_gem_object_put_unlocked.
authorDave Airlie <airlied@redhat.com>
Fri, 15 Mar 2019 01:37:20 +0000 (11:37 +1000)
committerDave Airlie <airlied@redhat.com>
Mon, 18 Mar 2019 00:10:46 +0000 (10:10 +1000)
When Daniel removed struct_mutex he didn't fix this call to the unlocked
variant which is required since we no longer use struct mutex.

This fixes a bunch of:
WARNING: CPU: 4 PID: 1370 at drivers/gpu/drm/drm_gem.c:931 drm_gem_object_put+0x2b/0x30 [drm]
Modules linked in: udl xt_CHECKSUM ipt_MASQUERADE tun bridge stp llc nf_conntrack_netbios_ns nf_conntrack_broadcast xt_CT ip6t>
CPU: 4 PID: 1370 Comm: Xorg Not tainted 5.0.0+ #2

backtraces when you plug in a udl device.

Fixes: ae358dacd217 (drm/udl: Get rid of dev->struct_mutex usage)
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/udl/udl_gem.c

index d5a23295dd80c1a9c1f2cc202c4c93048fc163ef..bb7b58407039bbbb099a371b9a432dc12983f886 100644 (file)
@@ -224,7 +224,7 @@ int udl_gem_mmap(struct drm_file *file, struct drm_device *dev,
        *offset = drm_vma_node_offset_addr(&gobj->base.vma_node);
 
 out:
        *offset = drm_vma_node_offset_addr(&gobj->base.vma_node);
 
 out:
-       drm_gem_object_put(&gobj->base);
+       drm_gem_object_put_unlocked(&gobj->base);
 unlock:
        mutex_unlock(&udl->gem_lock);
        return ret;
 unlock:
        mutex_unlock(&udl->gem_lock);
        return ret;