[Intel-gfx] [PATCH v2] igt/gem_workarounds: rework igt to test workaround registers
Damien Lespiau
damien.lespiau at intel.com
Tue Sep 2 11:59:06 CEST 2014
On Tue, Sep 02, 2014 at 10:18:20AM +0100, Arun Siluvery wrote:
> - igt_assert(fd >= 0);
> + if (fd < 0)
> + igt_skip_on("No Workaround table available !!\n");
That's not quite a correct use of the API. The _on is there to signal
the first argument is an expression. This will work only because the
string is evaluated to true. You probably want to use igt_skip_on_f()
http://people.freedesktop.org/~danvet/igt/intel-gpu-tools-i-g-t-core.html#igt-skip-on-f
> file = fdopen(fd, "r");
> igt_assert(file > 0);
> @@ -193,32 +186,40 @@ igt_main
> ret = getline(&line, &line_size, file);
> igt_assert(ret > 0);
> sscanf(line, "Workarounds applied: %d", &num_wa_regs);
> - igt_assert(num_wa_regs > 0);
>
> - wa_regs = malloc(num_wa_regs * sizeof(*wa_regs));
> + if (num_wa_regs) {
> + int i = 0;
>
> - i = 0;
> - while(getline(&line, &line_size, file) > 0) {
> - sscanf(line, "0x%X: 0x%08X, mask: 0x%08X",
> - &wa_regs[i].addr, &wa_regs[i].value,
> - &wa_regs[i].mask);
> - ++i;
> - }
> + wa_regs = malloc(num_wa_regs * sizeof(*wa_regs));
> + while (getline(&line, &line_size, file) > 0) {
> + sscanf(line, "0x%X: 0x%08X, mask: 0x%08X",
> + &wa_regs[i].addr, &wa_regs[i].value,
> + &wa_regs[i].mask);
> + ++i;
> + }
> + } else
> + igt_info("No workarounds exported\n");
It's a bit weird to just have an igt_info() here and skip in every
single subtest after that. How about a:
igt_skip_on_f(num_wa_regs == 0, "No workarounds exported\n");
and continue the rest of the test with the case (num_wa_regs == 0) out
of the picture?
--
Damien
More information about the Intel-gfx
mailing list