diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-09-30 18:44:15 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-09-30 22:55:18 +0200 |
commit | 711199b8ecb2fa07918e7061ff3b208efcaaa237 (patch) | |
tree | 5672e5e7ad999a1fe0202e3e4c073103406ab8e2 | |
parent | 6a8d33c2bb81f071715864c2e563ac17ae4f9967 (diff) |
lib/aux: Print progress output at INFO level
With the structured logging it makes more sense to tune this down a
bit. Also, this way it is consistent with Thomas Wood's new activity
indicator helper.
Spotted while discussing Thomas' patch with him.
v2: Thomas noticed that I've forgotten the fflush. Extract
igt_interactive_info for both igt_progress and igt_print_activity.
v3: Interactive output should go to stderr. Also extract the "is this
a terminal" check.
Cc: Thomas Wood <thomas.wood@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
-rw-r--r-- | lib/igt_aux.c | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/lib/igt_aux.c b/lib/igt_aux.c index 7c07b7d0..b32297ee 100644 --- a/lib/igt_aux.c +++ b/lib/igt_aux.c @@ -214,6 +214,23 @@ void igt_permute_array(void *array, unsigned size, } } +__attribute__((format(printf, 1, 2))) +static void igt_interactive_info(const char *format, ...) +{ + va_list args; + + if (!isatty(STDERR_FILENO)) + return; + + if (igt_log_level > IGT_LOG_INFO) + return; + + va_start(args, format); + vfprintf(stderr, format, args); + va_end(args); +} + + /** * igt_progress: * @header: header string to prepend to the progress indicator @@ -229,11 +246,8 @@ void igt_progress(const char *header, uint64_t i, uint64_t total) { int divider = 200; - if (!isatty(fileno(stderr))) - return; - if (i+1 >= total) { - igt_warn("\r%s100%%\n", header); + igt_interactive_info("\r%s100%%\n", header); return; } @@ -242,8 +256,8 @@ void igt_progress(const char *header, uint64_t i, uint64_t total) /* only bother updating about every 0.5% */ if (i % (total / divider) == 0) - igt_warn("\r%s%3llu%%", header, - (long long unsigned)i * 100 / total); + igt_interactive_info("\r%s%3llu%%", header, + (long long unsigned)i * 100 / total); } /** @@ -254,11 +268,7 @@ void igt_progress(const char *header, uint64_t i, uint64_t total) */ void igt_print_activity(void) { - if (!isatty(STDOUT_FILENO)) - return; - - igt_info("."); - fflush(stdout); + igt_interactive_info("."); } /* mappable aperture trasher helper */ |