diff --git a/src/freedreno/drm/freedreno_ringbuffer.c b/src/freedreno/drm/freedreno_ringbuffer.c index 310fa3f3dc3..2bc4cad87ec 100644 --- a/src/freedreno/drm/freedreno_ringbuffer.c +++ b/src/freedreno/drm/freedreno_ringbuffer.c @@ -49,10 +49,13 @@ fd_submit_del(struct fd_submit *submit) if (submit->primary) fd_ringbuffer_del(submit->primary); - fd_pipe_del(submit->pipe); - fd_device_del(submit->dev); + struct fd_pipe *pipe = submit->pipe; + struct fd_device *dev = submit->dev; submit->funcs->destroy(submit); + + fd_pipe_del(pipe); + fd_device_del(dev); } struct fd_submit *