We cover all Render ops under the "blend" group, so when we're doing
the cross products of some formats for the masking operation, skip
most of the ops (covering just zero, one, and src/dst alpha blend
factors along with a definitely non-glamor-accelerated one) .
All the tests now complete in <20s of runtime on my skylake.
Signed-off-by: Eric Anholt <eric@anholt.net>
This gets us parallelism between rendercheck tests at the cost of
spinning up more Xvfbs, and nicer logging of the tests that are run.
Signed-off-by: Eric Anholt <eric@anholt.net>
Inspired by the previous bug, build something we can use to write
damage testcases, including testing for the bug.
Signed-off-by: Eric Anholt <eric@anholt.net>
The failing struct comes from the python test written by Michal Srb
<msrb@suse.com>.
v2: Use a drawable (root window) and gc, so that PolyLines hopefully
actually tries processing things. However, the request seems to
process successfully so the poll() just stalls out. However, this
does let us distinguish between detecting the bigrequests error
and not, at least.
v3: Clean up the description of what we expect the poll() call to do.
v4: Use XI2 instead of PolyLine to trigger a predictable error. We know the
server replies with BadValue for a zero num_masks argument. So if we send
a bigreq with a num_masks 0 and a length 0, we can just check whether we
get killed (good) or a BadValue (bad). It doesn't test for specific memory
overflows or crashes, but based on the assumption that we shouldn't look
at *any* BigReq of size 0, this seems to be sufficient.
Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
I couldn't find any, and I was modifying the implementation, so I had
to write some. I would like the test to end with a "make sure there
weren't any stray unchecked errors", but I didn't figure out how to do
that.
v2: Extend sync tests to cover alarm delta and waitvalue changes.
Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
The Xvfb tests are passing and Xephyr-glamor is failing for me, but it
fails identically on autotools. It's disabled on Travis for now
because the >10 minutes of silence during testing times out the entire
build.
v2: Fix the disable on travis.
Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>