Hi Mika,
> > +static bool rings_stopped(void)
> > +{
> > + int fd;
> > + static char buf[128];
> > + unsigned long long val;
> > +
> > + fd = igt_debugfs_open("i915_ring_stop", O_RDONLY);
> > + igt_assert(fd >= 0);
> > +
> > + igt_assert(read(fd, buf, sizeof(buf)) > 0);
> > + close(fd);
> > +
> > + sscanf(buf, "%llx", &val);
> > +
> > + return (bool)val;
> > +}
>
> Please use igt_set_stop_rings() and igt_get_stop_rings().
>
> Also consider stopping only the ring you are testing for.
Oops, I didn see these before. Ok, done in the new version.
> > + for (i = 0; i < tail / 4; i++) {
> > + igt_assert(getline(&line, &line_size, file) >
> > 0);
> > + items = sscanf(line, "%08x : %08x\n",
> > + &offset, &command);
> > + igt_assert(items == 2);
> > + if ((command & 0x1F800000) ==
> > MI_BATCH_BUFFER_START) {
> > + igt_assert(getline(&line, &line_size,
> > file) > 0);
> > + items = sscanf(line, "%08x : %08x\n",
> > + &offset,
> > &expected_addr);
> > + igt_assert(items == 2);
>
> Should check for MAGIC_NUMBER here?
I'm doing it above already, inside bb_matched:
for (i = 0; i < sizeof(batch) / 4; i++) {
igt_assert(getline(&line, &line_size, file) >
0);
snprintf(expected_line, sizeof(expected_line),
"%08x : %08x",
4*i, batch[i]);
igt_assert(strstr(line, expected_line));
}
-- Oscar
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx