On Fri, Jul 31, 2015 at 04:11:10PM -0400, Micah Fedke wrote: > --- > lib/igt_kms.c | 13 +++++++------ > lib/igt_kms.h | 2 +- > tests/kms_flip.c | 2 +- > tests/kms_pipe_crc_basic.c | 2 +- > 4 files changed, 10 insertions(+), 9 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 7e956b4..c067443 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -294,7 +294,8 @@ int kmstest_get_pipe_from_crtc_id(int fd, int crtc_id) > memset(&pfci, 0, sizeof(pfci)); > pfci.crtc_id = crtc_id; > ret = drmIoctl(fd, DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID, &pfci); > - igt_assert(ret == 0); > + if(ret) > + return -1; We follow kernel coding style in igt and are fairly consistent about it, please follow suit. Also funny truth is that the kernel's implementation of get_pipe_from_crtc matches what you do below (it's how the vblank ioctl abi works), so you can just outright replace this all with the generic version. -Daniel > > return pfci.pipe; > } > @@ -631,6 +632,10 @@ found: > config->crtc_idx = i; > config->pipe = kmstest_get_pipe_from_crtc_id(drm_fd, > config->crtc->crtc_id); > + if(config->pipe == -1) { > + igt_warn("could not get pipe from crtc id, using index\n"); > + config->pipe = i; > + } > > drmModeFreeResources(resources); > > @@ -1801,13 +1806,10 @@ void igt_wait_for_vblank(int drm_fd, enum pipe pipe) > * An exit handler is installed to ensure connectors are reset when the test > * exits. > */ > -void igt_enable_connectors(void) > +void igt_enable_connectors(int drm_fd) > { > drmModeRes *res; > drmModeConnector *c; > - int drm_fd; > - > - drm_fd = drm_open_driver(DRIVER_INTEL); > > res = drmModeGetResources(drm_fd); > > @@ -1830,7 +1832,6 @@ void igt_enable_connectors(void) > > drmModeFreeConnector(c); > } > - close(drm_fd); > } > > /** > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index 565df14..b5f007d 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -270,7 +270,7 @@ void igt_wait_for_vblank(int drm_fd, enum pipe pipe); > > #define IGT_FIXED(i,f) ((i) << 16 | (f)) > > -void igt_enable_connectors(void); > +void igt_enable_connectors(int drm_fd); > void igt_reset_connectors(void); > > #define EDID_LENGTH 128 > diff --git a/tests/kms_flip.c b/tests/kms_flip.c > index 4d8d0c0..a88e707 100644 > --- a/tests/kms_flip.c > +++ b/tests/kms_flip.c > @@ -1702,7 +1702,7 @@ int main(int argc, char **argv) > igt_fixture { > drm_fd = drm_open_driver_master(DRIVER_INTEL); > > - igt_enable_connectors(); > + igt_enable_connectors(drm_fd); > > kmstest_set_vt_graphics_mode(); > igt_install_exit_handler(kms_flip_exit_handler); > diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c > index fc4ad46..10ef097 100644 > --- a/tests/kms_pipe_crc_basic.c > +++ b/tests/kms_pipe_crc_basic.c > @@ -228,7 +228,7 @@ igt_main > igt_fixture { > data.drm_fd = drm_open_driver_master(DRIVER_INTEL); > > - igt_enable_connectors(); > + igt_enable_connectors(data.drm_fd); > > kmstest_set_vt_graphics_mode(); > > -- > 2.1.4 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx