From 93a65895bb775932b02a3de692a1262ef7fafdbc Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Tue, 24 Jan 2012 23:18:21 +0100 Subject: drmtest: add progress indicator Some test that trash the aperture necessarily need to take forever, so add a little progress indicator to keep worried minds at peace. Signed-Off-by: Daniel Vetter --- lib/drmtest.c | 15 +++++++++++++++ lib/drmtest.h | 1 + 2 files changed, 16 insertions(+) (limited to 'lib') diff --git a/lib/drmtest.c b/lib/drmtest.c index b2ac7621..eda012c8 100644 --- a/lib/drmtest.c +++ b/lib/drmtest.c @@ -358,6 +358,21 @@ void drmtest_permute_array(void *array, unsigned size, } } +void drmtest_progress(const char *header, uint64_t i, uint64_t total) +{ + if (i+1 >= total) { + fprintf(stderr, "\r%s100%%\n", header, + (long long unsigned) i * 100 / total); + return; + } + + /* only bother updating about every 0.5% */ + if (i % (total / 200) == 0 || i+1 >= total) { + fprintf(stderr, "\r%s%3llu%%", header, + (long long unsigned) i * 100 / total); + } +} + /* mappable aperture trasher helper */ drm_intel_bo **trash_bos; int num_trash_bos; diff --git a/lib/drmtest.h b/lib/drmtest.h index 90d81e7f..a8438abd 100644 --- a/lib/drmtest.h +++ b/lib/drmtest.h @@ -60,6 +60,7 @@ void drmtest_permute_array(void *array, unsigned size, void (*exchange_func)(void *array, unsigned i, unsigned j)); +void drmtest_progress(const char *header, uint64_t i, uint64_t total); /* helpers based upon the libdrm buffer manager */ void drmtest_init_aperture_trashers(drm_intel_bufmgr *bufmgr); -- cgit v1.2.3