Commit 50137a7df982f3767fe0b3b0cd0b9cfaf09c2cd9

Authored by Dan Williams
1 parent 4076e755db

dmatest: verbose mode

Verbose mode turns on test success messages, by default we only output
test summaries and failure results.

Also cleaned up some stray quotes, leftover from putting the result
message format string all on one line.

Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>

Showing 1 changed file with 18 additions and 7 deletions Side-by-side Diff

drivers/dma/dmatest.c
... ... @@ -70,6 +70,10 @@
70 70 module_param(noverify, bool, S_IRUGO | S_IWUSR);
71 71 MODULE_PARM_DESC(noverify, "Disable random data setup and verification");
72 72  
  73 +static bool verbose;
  74 +module_param(verbose, bool, S_IRUGO | S_IWUSR);
  75 +MODULE_PARM_DESC(verbose, "Enable \"success\" result messages (default: off)");
  76 +
73 77 /**
74 78 * struct dmatest_params - test parameters.
75 79 * @buf_size: size of the memcpy test buffer
... ... @@ -336,7 +340,7 @@
336 340 static void result(const char *err, unsigned int n, unsigned int src_off,
337 341 unsigned int dst_off, unsigned int len, unsigned long data)
338 342 {
339   - pr_info("%s: result #%u: '%s' with src_off=0x%x ""dst_off=0x%x len=0x%x (%lu)",
  343 + pr_info("%s: result #%u: '%s' with src_off=0x%x dst_off=0x%x len=0x%x (%lu)",
340 344 current->comm, n, err, src_off, dst_off, len, data);
341 345 }
342 346  
343 347  
... ... @@ -344,10 +348,17 @@
344 348 unsigned int dst_off, unsigned int len,
345 349 unsigned long data)
346 350 {
347   - pr_debug("%s: result #%u: '%s' with src_off=0x%x ""dst_off=0x%x len=0x%x (%lu)",
348   - current->comm, n, err, src_off, dst_off, len, data);
  351 + pr_debug("%s: result #%u: '%s' with src_off=0x%x dst_off=0x%x len=0x%x (%lu)",
  352 + current->comm, n, err, src_off, dst_off, len, data);
349 353 }
350 354  
  355 +#define verbose_result(err, n, src_off, dst_off, len, data) ({ \
  356 + if (verbose) \
  357 + result(err, n, src_off, dst_off, len, data); \
  358 + else \
  359 + dbg_result(err, n, src_off, dst_off, len, data); \
  360 +})
  361 +
351 362 static unsigned long long dmatest_persec(s64 runtime, unsigned int val)
352 363 {
353 364 unsigned long long per_sec = 1000000;
... ... @@ -640,8 +651,8 @@
640 651 dmaengine_unmap_put(um);
641 652  
642 653 if (params->noverify) {
643   - dbg_result("test passed", total_tests, src_off, dst_off,
644   - len, 0);
  654 + verbose_result("test passed", total_tests, src_off,
  655 + dst_off, len, 0);
645 656 continue;
646 657 }
647 658  
... ... @@ -670,8 +681,8 @@
670 681 len, error_count);
671 682 failed_tests++;
672 683 } else {
673   - dbg_result("test passed", total_tests, src_off, dst_off,
674   - len, 0);
  684 + verbose_result("test passed", total_tests, src_off,
  685 + dst_off, len, 0);
675 686 }
676 687 }
677 688 runtime = ktime_us_delta(ktime_get(), ktime);