On Thu, May 22, 2014 at 10:06:37AM -0700, Matt Roper wrote: > On Thu, May 22, 2014 at 08:01:09PM +0300, Ville Syrjälä wrote: > > On Thu, May 22, 2014 at 09:47:39AM -0700, Matt Roper wrote: > > > If a subtest fails, cleanup_crtc() never gets called. Currently that > > > also causes igt_pipe_crc_free() to never be called, leading all > > > subsequent subtests to also fail with -EBUSY at igt_pipe_crc_new(). > > > Move the calls to igt_pipe_crc_{new,free} into igt_main so that > > > we don't need to worry about closing and reopening the CRC > > > filedescriptor for each subtest. > > > > IIRC we can't call them at init because when you call igt_pipe_crc_new() > > the pipe->port mapping has to be properly set up so that the auto crc > > source will know what to do. > > > > The subtest failure case is the reason why at the start of every subtest > > we call igt_pipe_crc_free() before calling igt_pipe_crc_new(). Are you > > saying that's not working as intended? > > Right, you're working on a fresh test_data structure for each call of > run_test(), so you've already lost the test_data->pipe_crc pointer that > you're trying to check for NULL there. > > I guess the right fix is to move the pipe_crc pointer up into data_t > rather than test_data_t? I guess just kill test_data_t and shovel everything into data_t. I don't remember why the test_data_t came to be there, but I don't think it serves any purpose anymore. -- Ville Syrjälä Intel OTC _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx