[igt-dev] [PATCH igt 06/16] lib: Remove overzealous assertion on gem_set_caching()

Chris Wilson chris at chris-wilson.co.uk
Tue Feb 20 08:45:10 UTC 2018


When the asserts were added for the acceptable error codes for
SET_CACHING ioctl, foresight was not given to the possibility that the
device may not handle the caching mode and return -ENODEV. Remove the
error code assertion from the library, that is the job for the ABI
tests.

Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
---
 lib/ioctl_wrappers.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 7b656cce..8748cfcf 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -208,10 +208,10 @@ static int __gem_set_caching(int fd, uint32_t handle, uint32_t caching)
 	arg.caching = caching;
 
 	err = 0;
-	if (igt_ioctl(fd, DRM_IOCTL_I915_GEM_SET_CACHING, &arg)) {
+	if (igt_ioctl(fd, DRM_IOCTL_I915_GEM_SET_CACHING, &arg))
 		err = -errno;
-		igt_assert(errno == ENOTTY || errno == EINVAL);
-	}
+
+	errno = 0;
 	return err;
 }
 
@@ -229,7 +229,6 @@ static int __gem_set_caching(int fd, uint32_t handle, uint32_t caching)
 void gem_set_caching(int fd, uint32_t handle, uint32_t caching)
 {
 	igt_require(__gem_set_caching(fd, handle, caching) == 0);
-	errno = 0;
 }
 
 /**
-- 
2.16.1



More information about the igt-dev mailing list