igt/gem_concurrent_blit: Enable quicker interruptible testing

v2: Because I managed to push the wrong version.

Make --list-subtests happer by creating the name before the igt_fixture,
not inside it.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2016-03-19 13:10:17 +00:00
parent 1abbd69740
commit f338e9834c

View File

@ -1532,11 +1532,9 @@ run_modes(const char *style,
} }
static unsigned static unsigned
num_buffers(char *buf, int buflen, num_buffers(uint64_t max,
uint64_t max,
const struct size *s, const struct size *s,
const struct create *c, const struct create *c,
const char *name,
unsigned allow_mem) unsigned allow_mem)
{ {
unsigned size = 4*s->width*s->height; unsigned size = 4*s->width*s->height;
@ -1553,14 +1551,6 @@ num_buffers(char *buf, int buflen,
if (c->require) if (c->require)
c->require(c, n); c->require(c, n);
igt_debug("%s: using 2x%d buffers, each %s\n",
name, n, s->name);
snprintf(buf, buflen, "%s%s-%s",
c->name, s->name, name);
intel_require_memory(2*n, size, allow_mem);
return n; return n;
} }
@ -1689,56 +1679,62 @@ igt_main
for (const struct create *c = create; c->name; c++) { for (const struct create *c = create; c->name; c++) {
for (const struct size *s = sizes; s->name; s++) { for (const struct size *s = sizes; s->name; s++) {
/* Minimum test set */ /* Minimum test set */
snprintf(name, sizeof(name), "%s%s-%s",
c->name, s->name, "tiny");
igt_subtest_group { igt_subtest_group {
igt_fixture { igt_fixture {
count = num_buffers(name, sizeof(name), count = num_buffers(0, s, c, CHECK_RAM);
0, s, c,
"tiny", CHECK_RAM);
} }
run_modes(name, c, modes, s, count); run_modes(name, c, modes, s, count);
} }
/* "Average" test set */ /* "Average" test set */
snprintf(name, sizeof(name), "%s%s-%s",
c->name, s->name, "small");
igt_subtest_group { igt_subtest_group {
igt_fixture { igt_fixture {
count = num_buffers(name, sizeof(name), count = num_buffers(gem_mappable_aperture_size()/4,
gem_mappable_aperture_size()/4, s, c, s, c, CHECK_RAM);
"small", CHECK_RAM);
} }
run_modes(name, c, modes, s, count); run_modes(name, c, modes, s, count);
} }
/* Use the entire mappable aperture */ /* Use the entire mappable aperture */
snprintf(name, sizeof(name), "%s%s-%s",
c->name, s->name, "thrash");
igt_subtest_group { igt_subtest_group {
igt_fixture { igt_fixture {
count = num_buffers(name, sizeof(name), count = num_buffers(gem_mappable_aperture_size(),
gem_mappable_aperture_size(), s, c, s, c, CHECK_RAM);
"thrash", CHECK_RAM);
} }
run_modes(name, c, modes, s, count); run_modes(name, c, modes, s, count);
} }
/* Use the entire global GTT */ /* Use the entire global GTT */
snprintf(name, sizeof(name), "%s%s-%s",
c->name, s->name, "global");
igt_subtest_group { igt_subtest_group {
igt_fixture { igt_fixture {
count = num_buffers(name, sizeof(name), count = num_buffers(gem_global_aperture_size(fd),
gem_global_aperture_size(fd), s, c, s, c, CHECK_RAM);
"global", CHECK_RAM);
} }
run_modes(name, c, modes, s, count); run_modes(name, c, modes, s, count);
} }
/* Use the entire per-process GTT */ /* Use the entire per-process GTT */
snprintf(name, sizeof(name), "%s%s-%s",
c->name, s->name, "full");
igt_subtest_group { igt_subtest_group {
igt_fixture { igt_fixture {
count = num_buffers(name, sizeof(name), count = num_buffers(gem_aperture_size(fd),
gem_aperture_size(fd), s, c, s, c, CHECK_RAM);
"full", CHECK_RAM);
} }
run_modes(name, c, modes, s, count); run_modes(name, c, modes, s, count);
} }
/* Use the entire mappable aperture, force swapping */ /* Use the entire mappable aperture, force swapping */
snprintf(name, sizeof(name), "%s%s-%s",
c->name, s->name, "swap");
igt_subtest_group { igt_subtest_group {
igt_fixture { igt_fixture {
if (intel_get_avail_ram_mb() > gem_mappable_aperture_size()/(1024*1024)) { if (intel_get_avail_ram_mb() > gem_mappable_aperture_size()/(1024*1024)) {
@ -1756,9 +1752,8 @@ igt_main
igt_require(pinned); igt_require(pinned);
} }
count = num_buffers(name, sizeof(name), count = num_buffers(gem_mappable_aperture_size(),
gem_mappable_aperture_size(), s, c, s, c, CHECK_RAM | CHECK_SWAP);
"swap", CHECK_RAM | CHECK_SWAP);
} }
run_modes(name, c, modes, s, count); run_modes(name, c, modes, s, count);