hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/drivers/gpu/drm/nouveau/nouveau_drm.c
....@@ -124,10 +124,16 @@
124124 static inline bool
125125 nouveau_cli_work_ready(struct dma_fence *fence)
126126 {
127
- if (!dma_fence_is_signaled(fence))
128
- return false;
129
- dma_fence_put(fence);
130
- return true;
127
+ bool ret = true;
128
+
129
+ spin_lock_irq(fence->lock);
130
+ if (!dma_fence_is_signaled_locked(fence))
131
+ ret = false;
132
+ spin_unlock_irq(fence->lock);
133
+
134
+ if (ret == true)
135
+ dma_fence_put(fence);
136
+ return ret;
131137 }
132138
133139 static void