minigbm: add spew on IOCTL failures.
Having spew on errors would have made debugging the Netflix
double fd close more obvious.
BUG=chromium:462459, chromium:464628
TEST=Builds for link, tegra, nyan.
Change-Id: I050794fbca8e9291752e52119751847ffcacd798
Reviewed-on: https://chromium-review.googlesource.com/265065
Reviewed-by: Ilja Friedel <ihf@chromium.org>
Commit-Queue: Ilja Friedel <ihf@chromium.org>
Tested-by: Ilja Friedel <ihf@chromium.org>
diff --git a/i915.c b/i915.c
index 59fa170..511e4f4 100644
--- a/i915.c
+++ b/i915.c
@@ -6,6 +6,7 @@
#ifdef GBM_I915
+#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <stdio.h>
@@ -49,6 +50,7 @@
get_param.value = &device_id;
ret = drmIoctl(gbm->fd, DRM_IOCTL_I915_GETPARAM, &get_param);
if (ret) {
+ fprintf(stderr, "minigbm: DRM_IOCTL_I915_GETPARAM failed\n");
free(i915_gbm);
return -1;
}
@@ -143,9 +145,11 @@
gem_create.size = size;
ret = drmIoctl(gbm->fd, DRM_IOCTL_I915_GEM_CREATE, &gem_create);
- if (ret)
+ if (ret) {
+ fprintf(stderr, "minigbm: DRM_IOCTL_I915_GEM_CREATE failed "
+ "(size=%zu)\n", size);
return ret;
-
+ }
bo->handle.u32 = gem_create.handle;
bo->size = size;
@@ -160,6 +164,12 @@
if (ret == -1) {
struct drm_gem_close gem_close;
gem_close.handle = bo->handle.u32;
+ fprintf(stderr, "minigbm: DRM_IOCTL_I915_GEM_SET_TILING failed "
+ "errno=%x (handle=%x, tiling=%x, stride=%x)\n",
+ errno,
+ gem_set_tiling.handle,
+ gem_set_tiling.tiling_mode,
+ gem_set_tiling.stride);
drmIoctl(gbm->fd, DRM_IOCTL_GEM_CLOSE, &gem_close);
return -errno;
}