From b2c23b1e48f043edee1a6aaa3c132c13edba032e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 8 May 2020 11:28:14 -0700 Subject: [PATCH 1/1] freedreno: Mark all ringbuffer BOs as to be dumped on crash. We can avoid passing these flags around in the DRM backends by just marking ring BOs up front. Part-of: --- src/freedreno/drm/freedreno_bo.c | 6 ++++-- src/freedreno/drm/msm_ringbuffer_sp.c | 3 +-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/freedreno/drm/freedreno_bo.c b/src/freedreno/drm/freedreno_bo.c index 794f0bc3b60..a4218cd8ffb 100644 --- a/src/freedreno/drm/freedreno_bo.c +++ b/src/freedreno/drm/freedreno_bo.c @@ -132,9 +132,11 @@ fd_bo_new_ring(struct fd_device *dev, uint32_t size) { uint32_t flags = DRM_FREEDRENO_GEM_GPUREADONLY; struct fd_bo *bo = bo_new(dev, size, flags, &dev->ring_cache); - if (bo) + if (bo) { bo->bo_reuse = RING_CACHE; - fd_bo_set_name(bo, "cmdstream"); + bo->flags |= FD_RELOC_DUMP; + fd_bo_set_name(bo, "cmdstream"); + } return bo; } diff --git a/src/freedreno/drm/msm_ringbuffer_sp.c b/src/freedreno/drm/msm_ringbuffer_sp.c index ef16ccd18e2..65bfb2bde80 100644 --- a/src/freedreno/drm/msm_ringbuffer_sp.c +++ b/src/freedreno/drm/msm_ringbuffer_sp.c @@ -259,7 +259,7 @@ msm_submit_sp_flush(struct fd_submit *submit, int in_fence_fd, for (unsigned i = 0; i < primary->u.nr_cmds; i++) { cmds[i].type = MSM_SUBMIT_CMD_BUF; cmds[i].submit_idx = msm_submit_append_bo(msm_submit, - primary->u.cmds[i].ring_bo, FD_RELOC_DUMP); + primary->u.cmds[i].ring_bo, 0); cmds[i].submit_offset = primary->offset; cmds[i].size = primary->u.cmds[i].size; cmds[i].pad = 0; @@ -453,7 +453,6 @@ msm_ringbuffer_sp_emit_reloc_ring(struct fd_ringbuffer *ring, msm_ringbuffer_sp_emit_reloc(ring, &(struct fd_reloc){ .bo = bo, - .flags = FD_RELOC_DUMP, .offset = msm_target->offset, }); -- 2.30.2