summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/winsys/r600/drm/radeon_bo_pb.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/winsys/r600/drm/radeon_bo_pb.c b/src/gallium/winsys/r600/drm/radeon_bo_pb.c
index 33964814a02..a3452027f27 100644
--- a/src/gallium/winsys/r600/drm/radeon_bo_pb.c
+++ b/src/gallium/winsys/r600/drm/radeon_bo_pb.c
@@ -100,6 +100,10 @@ radeon_bo_pb_map_internal(struct pb_buffer *_buf,
uint32_t domain;
if (radeon_bo_busy(buf->mgr->radeon, buf->bo, &domain))
return NULL;
+ if (radeon_bo_map(buf->mgr->radeon, buf->bo)) {
+ return NULL;
+ }
+ goto out;
}
if (buf->bo->data != NULL) {
@@ -115,7 +119,7 @@ radeon_bo_pb_map_internal(struct pb_buffer *_buf,
return NULL;
}
}
-
+out:
LIST_DELINIT(&buf->maplist);
return buf->bo->data;
}