diff --git a/src/broadcom/vulkan/v3dv_device.c b/src/broadcom/vulkan/v3dv_device.c index 496f93e28be..b6c2c99369f 100644 --- a/src/broadcom/vulkan/v3dv_device.c +++ b/src/broadcom/vulkan/v3dv_device.c @@ -1546,7 +1546,9 @@ device_free_wsi_dumb(int32_t display_fd, int32_t dumb_handle) struct drm_mode_destroy_dumb destroy_dumb = { .handle = dumb_handle, }; - v3dv_ioctl(display_fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_dumb); + if (v3dv_ioctl(display_fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_dumb)) { + fprintf(stderr, "destroy dumb object %d: %s\n", dumb_handle, strerror(errno)); + } } static void diff --git a/src/broadcom/vulkan/v3dv_queue.c b/src/broadcom/vulkan/v3dv_queue.c index 5698981673a..d26056530ef 100644 --- a/src/broadcom/vulkan/v3dv_queue.c +++ b/src/broadcom/vulkan/v3dv_queue.c @@ -46,7 +46,12 @@ v3dv_clif_dump(struct v3dv_device *device, char *name = ralloc_asprintf(NULL, "%s_0x%x", bo->name, bo->offset); - v3dv_bo_map(device, bo, bo->size); + bool ok = v3dv_bo_map(device, bo, bo->size); + if (!ok) { + fprintf(stderr, "failed to map BO for clif_dump.\n"); + ralloc_free(name); + goto free_clif; + } clif_dump_add_bo(clif, name, bo->offset, bo->size, bo->map); ralloc_free(name); @@ -54,6 +59,7 @@ v3dv_clif_dump(struct v3dv_device *device, clif_dump(clif, submit); + free_clif: clif_dump_destroy(clif); }