Skip to content

Commit 96f51ca

Browse files
committed
v3d: Crash mitigation
Trade a crash in v3d_irq for a warning. This is just a temporary sticking plaster over the wound - proper surgery is required. Link: #6624 Signed-off-by: Phil Elwell <[email protected]>
1 parent d53a520 commit 96f51ca

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

drivers/gpu/drm/v3d/v3d_irq.c

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,15 @@ v3d_irq(int irq, void *arg)
113113
}
114114

115115
if (intsts & V3D_INT_FRDONE) {
116-
struct v3d_fence *fence =
117-
to_v3d_fence(v3d->render_job->base.irq_fence);
118-
119-
v3d_job_update_stats(&v3d->render_job->base, V3D_RENDER);
120-
trace_v3d_rcl_irq(&v3d->drm, fence->seqno);
121-
dma_fence_signal(&fence->base);
122-
v3d->render_job = NULL;
116+
if (!WARN_ON(!v3d->render_job)) {
117+
struct v3d_fence *fence =
118+
to_v3d_fence(v3d->render_job->base.irq_fence);
119+
120+
v3d_job_update_stats(&v3d->render_job->base, V3D_RENDER);
121+
trace_v3d_rcl_irq(&v3d->drm, fence->seqno);
122+
dma_fence_signal(&fence->base);
123+
v3d->render_job = NULL;
124+
}
123125
status = IRQ_HANDLED;
124126
}
125127

0 commit comments

Comments
 (0)