On Fri, Jul 11, 2014 at 05:55:41PM +0000, Reese, Armin C wrote: > Which of the I-G-Ts would be the best to house the set-cache subtest? > Is gem_partial_pwrite_pread a good candidate? I guess you could just create a new test binary if there's nothing suitable. Especially for tests I'm leaning towards "code reuse is overrated". And with igt_simple_main there's really no boilerplate (besides the obligatory license header) left. -Daniel > - Armin > > -----Original Message----- > From: Daniel Vetter [mailto:daniel.vetter@xxxxxxxx] On Behalf Of Daniel Vetter > Sent: Friday, June 13, 2014 12:14 AM > To: Reese, Armin C > Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Subject: Re: [PATCH] igt/gem_partial_pwrite_pread: Add set-cache subtest to validate JIRA VIZ-3721 > > On Thu, Jun 12, 2014 at 02:18:37PM -0700, armin.c.reese@xxxxxxxxx wrote: > > From: Armin Reese <armin.c.reese@xxxxxxxxx> > > > > This subtest forces the driver down the code path in > > i915_gem_object_set_cache_level() which unbinds VMAs and triggers the > > kernel panic described in VIZ-3721. This test will pass if the bug fix is in place. > > > > Bugzilla: https://bugs.fredesktop.org/show_bug.cgi?id=76384 > > Signed-off-by: Armin Reese <armin.c.reese@xxxxxxxxx> > > --- > > tests/gem_partial_pwrite_pread.c | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/tests/gem_partial_pwrite_pread.c > > b/tests/gem_partial_pwrite_pread.c > > index 7945ba7..3e3ecc9 100644 > > --- a/tests/gem_partial_pwrite_pread.c > > +++ b/tests/gem_partial_pwrite_pread.c > > @@ -131,6 +131,14 @@ static void test_partial_reads(void) > > > > } > > > > +static void test_set_cache(void) > > +{ > > + igt_info("checking set-cache\n"); > > + > > + blt_bo_fill(staging_bo, scratch_bo, 0); > > + > > +} > > Ok, my apologies for the unclear JIRA description. My idea was to have a tailor-made testcase with a minimal reproduction scenario (i.e. map into 2 ppgtt or ggtt + ppgtt, then do a set_caching ioctl). > > This here blows up because we do the set_caching as part of the fixture, so has a high risk that when someone decides to refactor the testcase we'll no longer test this bug. Hence the task to create a new, specific testcase. > -Daniel > > > + > > static void test_partial_writes(void) { > > int i, j; > > @@ -244,6 +252,9 @@ static void do_tests(int cache_level, const char *suffix) > > gem_set_caching(fd, scratch_bo->handle, cache_level); > > } > > > > + igt_subtest_f("set-cache%s", suffix) > > + test_set_cache(); > > + > > igt_subtest_f("reads%s", suffix) > > test_partial_reads(); > > > > -- > > 1.9.1 > > > > _______________________________________________ > > Intel-gfx mailing list > > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > > http://lists.freedesktop.org/mailman/listinfo/intel-gfx > > -- > Daniel Vetter > Software Engineer, Intel Corporation > +41 (0) 79 365 57 48 - http://blog.ffwll.ch -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx