| #include "igt.h" | |
| #include <sys/ioctl.h> | |
| #include <fcntl.h> | |
| #include <errno.h> | |
| #include <string.h> | |
| #include <signal.h> | |
| #include <i915_drm.h> | |
| int main(void) | |
| { | |
| struct drm_i915_gem_sw_finish arg = { 0 }; | |
| int fd; | |
| signal(SIGALRM, SIG_IGN); | |
| fd = __drm_open_driver(DRIVER_INTEL); | |
| if (fd < 0) | |
| return IGT_EXIT_SKIP; | |
| alarm(1); | |
| if (ioctl(fd, DRM_IOCTL_I915_GEM_SW_FINISH, &arg) == 0) | |
| return IGT_EXIT_SKIP; | |
| switch (errno) { | |
| case ENOENT: | |
| return 0; | |
| case EIO: | |
| return 1; | |
| case EINTR: | |
| return 2; | |
| default: | |
| return 3; | |
| } | |
| } |