tests/gem_evict_everything: add swapping and forked subtests
Much better at hitting the list corruption here on my machines
than what we have thus far.
Note that somehow I just can't reproduce the bug any more. No idea
why. But I guess it's time to simply push this pile out.
v2: Limit threads and rounds to something reasonable.
v3: Use igt_permute_array to avoid EINVAL due to duplicated bo.
v4:
- Add a variant of the forked tests with multiple drm fds.
- Tune the swapped forked tests a bit to complete in a reasonable
amount of time.
v5: Add some memory pressure from the cpu by using cpu mmaps (which
directly hit shmem, so bypass gem completely).
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>