[Intel-gfx] [PATCH 0/5] gem-stress librarification + ctx test
Ben Widawsky
ben at bwidawsk.net
Mon Jan 16 03:21:21 CET 2012
My motivation for these patches is to test HW context support. In doing
this I realized that all 3d state stuff is stuck in gem_stress. The 2nd
and 3rd patches pull gem_stress out into a library.
gem_stress does not appear at all threadsafe. To cheaply workaround this
(for now) deal with it by using fork/exec instead of multithreaded
programs.
An example of how to do this is with the context test I created. Patch 4
and 5 implement this. Patch 4 is a simple wrapper for libdrm calls,
patch 5 is the test itself. This won't compile for people unless they
use my libdrm, and the test won't be usable unless people take my
kernel. I plan to post those separately in the very near future. However
for those interested the branches are available from my freedesktop.org
repositories.
kernel:
git://people.freedesktop.org/~bwidawsk/drm-intel context-support
libdrm:
git://people.freedesktop.org/~bwidawsk/drm context-support
i-g-t:
git://people.freedesktop.org/~bwidawsk/intel-gpu-tools context-support
Ben Widawsky (5):
i-g-t: silence -Winline
gem_stress: make it library friendly
gem_stress: more library refactoring
context: libdrm wrappers
contexts: basic context test
lib/Makefile.am | 6 +
lib/gem_stress.c | 238 ++++++++
lib/gem_stress.h | 122 ++++
lib/gem_stress_gen6.c | 581 ++++++++++++++++++
lib/gem_stress_i830.c | 354 +++++++++++
lib/gem_stress_i915.c | 190 ++++++
lib/gen6_render.h | 1553 +++++++++++++++++++++++++++++++++++++++++++++++
lib/intel_batchbuffer.c | 40 ++-
lib/intel_batchbuffer.h | 3 +
lib/intel_gpu_tools.h | 5 +
tests/Makefile.am | 6 +-
tests/gem_ctx_basic.c | 121 ++++
tests/gem_stress.c | 231 +-------
tests/gem_stress.h | 100 ---
tests/gem_stress_gen6.c | 595 ------------------
tests/gem_stress_i830.c | 354 -----------
tests/gem_stress_i915.c | 190 ------
tests/gen6_render.h | 1553 -----------------------------------------------
18 files changed, 3227 insertions(+), 3015 deletions(-)
create mode 100644 lib/gem_stress.c
create mode 100644 lib/gem_stress.h
create mode 100644 lib/gem_stress_gen6.c
create mode 100644 lib/gem_stress_i830.c
create mode 100644 lib/gem_stress_i915.c
create mode 100644 lib/gen6_render.h
create mode 100644 tests/gem_ctx_basic.c
delete mode 100644 tests/gem_stress.h
delete mode 100644 tests/gem_stress_gen6.c
delete mode 100644 tests/gem_stress_i830.c
delete mode 100644 tests/gem_stress_i915.c
delete mode 100644 tests/gen6_render.h
--
1.7.8.3
More information about the Intel-gfx
mailing list