test_hexdump: switch to memcmp()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 20 Jan 2016 22:58:58 +0000 (14:58 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 21 Jan 2016 01:09:18 +0000 (17:09 -0800)
Better to use memcmp() against entire buffer to check that nothing is
happened to the data in the tail.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/test_hexdump.c

index 141d031e6a1324e7190ab2d5d1571cab9584d3f3..4b949aac6f08041d73e083755f8228749bb0a1f8 100644 (file)
@@ -72,8 +72,6 @@ static void __init test_hexdump_prepare_test(size_t len, int rowsize,
        else
                result = test_data_1_le;
 
-       memset(test, FILL_CHAR, testlen);
-
        /* hex dump */
        p = test;
        for (i = 0; i < l / gs; i++) {
@@ -109,13 +107,15 @@ static void __init test_hexdump(size_t len, int rowsize, int groupsize,
        char test[TEST_HEXDUMP_BUF_SIZE];
        char real[TEST_HEXDUMP_BUF_SIZE];
 
+       memset(real, FILL_CHAR, sizeof(real));
        hex_dump_to_buffer(data_b, len, rowsize, groupsize, real, sizeof(real),
                           ascii);
 
+       memset(test, FILL_CHAR, sizeof(test));
        test_hexdump_prepare_test(len, rowsize, groupsize, test, sizeof(test),
                                  ascii);
 
-       if (strcmp(test, real)) {
+       if (memcmp(test, real, TEST_HEXDUMP_BUF_SIZE)) {
                pr_err("Len: %zu row: %d group: %d\n", len, rowsize, groupsize);
                pr_err("Result: '%s'\n", real);
                pr_err("Expect: '%s'\n", test);