summaryrefslogtreecommitdiff
path: root/tests/gem_partial_pwrite_pread.c
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2012-11-28 12:47:26 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-11-28 12:47:26 +0100
commit1a55ca753e3250baec32aa87cdea18b746141325 (patch)
treea157fd2b8abbcd60534d5b1cf301f472c107963f /tests/gem_partial_pwrite_pread.c
parentaf228d4edc44fc539e6a28ac68ce7a880d036f99 (diff)
tests/gem_partial_pwrite_pread: refactor subtests into functions
This was a too big mess. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'tests/gem_partial_pwrite_pread.c')
-rw-r--r--tests/gem_partial_pwrite_pread.c61
1 files changed, 42 insertions, 19 deletions
diff --git a/tests/gem_partial_pwrite_pread.c b/tests/gem_partial_pwrite_pread.c
index 5c8f6f5f..81fcdf5d 100644
--- a/tests/gem_partial_pwrite_pread.c
+++ b/tests/gem_partial_pwrite_pread.c
@@ -103,27 +103,11 @@ blt_bo_fill(drm_intel_bo *tmp_bo, drm_intel_bo *bo, int val)
#define MAX_BLT_SIZE 128
#define ROUNDS 1000
-int main(int argc, char **argv)
+uint8_t tmp[BO_SIZE];
+
+static void test_partial_reads(void)
{
int i, j;
- uint8_t tmp[BO_SIZE];
- uint8_t *gtt_ptr;
-
- srandom(0xdeadbeef);
-
- fd = drm_open_any();
-
- bufmgr = drm_intel_bufmgr_gem_init(fd, 4096);
- //drm_intel_bufmgr_gem_enable_reuse(bufmgr);
- devid = intel_get_drm_devid(fd);
- batch = intel_batchbuffer_alloc(bufmgr, devid);
-
- /* overallocate the buffers we're actually using because */
- scratch_bo = drm_intel_bo_alloc(bufmgr, "scratch bo", BO_SIZE, 4096);
- staging_bo = drm_intel_bo_alloc(bufmgr, "staging bo", BO_SIZE, 4096);
-
- drmtest_init_aperture_trashers(bufmgr);
- mappable_gtt_limit = gem_mappable_aperture_size();
printf("checking partial reads\n");
for (i = 0; i < ROUNDS; i++) {
@@ -147,6 +131,13 @@ int main(int argc, char **argv)
drmtest_progress("partial reads test: ", i, ROUNDS);
}
+}
+
+static void test_partial_writes(void)
+{
+ int i, j;
+ uint8_t *gtt_ptr;
+
printf("checking partial writes\n");
for (i = 0; i < ROUNDS; i++) {
int start, len;
@@ -191,6 +182,13 @@ int main(int argc, char **argv)
drmtest_progress("partial writes test: ", i, ROUNDS);
}
+}
+
+static void test_partial_read_writes(void)
+{
+ int i, j;
+ uint8_t *gtt_ptr;
+
printf("checking partial writes after partial reads\n");
for (i = 0; i < ROUNDS; i++) {
int start, len;
@@ -253,6 +251,31 @@ int main(int argc, char **argv)
drmtest_progress("partial read/writes test: ", i, ROUNDS);
}
+}
+
+int main(int argc, char **argv)
+{
+ srandom(0xdeadbeef);
+
+ fd = drm_open_any();
+
+ bufmgr = drm_intel_bufmgr_gem_init(fd, 4096);
+ //drm_intel_bufmgr_gem_enable_reuse(bufmgr);
+ devid = intel_get_drm_devid(fd);
+ batch = intel_batchbuffer_alloc(bufmgr, devid);
+
+ /* overallocate the buffers we're actually using because */
+ scratch_bo = drm_intel_bo_alloc(bufmgr, "scratch bo", BO_SIZE, 4096);
+ staging_bo = drm_intel_bo_alloc(bufmgr, "staging bo", BO_SIZE, 4096);
+
+ drmtest_init_aperture_trashers(bufmgr);
+ mappable_gtt_limit = gem_mappable_aperture_size();
+
+ test_partial_reads();
+
+ test_partial_writes();
+
+ test_partial_read_writes();
drmtest_cleanup_aperture_trashers();
drm_intel_bufmgr_destroy(bufmgr);