]> www.infradead.org Git - mtd-utils.git/commitdiff
Fix printf format specifiers for 64 bit integer types
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>
Thu, 24 Aug 2023 08:28:42 +0000 (10:28 +0200)
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>
Thu, 24 Aug 2023 08:30:28 +0000 (10:30 +0200)
In nandflipbits, nandtest and ubiscan, uint64_t integers are printed
to stdout using "%llu" as a format specifier, but on platforms like
x86_64, uint64_t is actually typedef'd as `unsigned long` only.

For compatibillity across platforms, simply use the C99 printfs
macros instead.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
nand-utils/nandflipbits.c
nand-utils/nandtest.c
ubi-utils/ubiscan.c

index cd66d0baa8a3b55d5175c54201fe29045cc01622..7066408e6c62a47f59b5c9a1de44167b0de51b91 100644 (file)
@@ -203,7 +203,8 @@ int main(int argc, char **argv)
                int page;
 
                if (bits_to_flip[i].offset >= mtdlen) {
-                       fprintf(stderr, "Invalid byte offset %lld (max %lld)\n",
+                       fprintf(stderr, "Invalid byte offset %" PRId64
+                               " (max %" PRId64 ")\n",
                                bits_to_flip[i].offset, mtdlen);
                        ret = EXIT_FAILURE;
                        goto free_buf;
index 14dfbff0a0650262ef41ea4fa0a379c1e5cb4058..cac0ddeeaaa550d6c6229294499e49f6de1161bf 100644 (file)
@@ -266,17 +266,20 @@ int main(int argc, char **argv)
                length = mem_size;
 
        if (offset % meminfo.erasesize) {
-               fprintf(stderr, "Offset %llx not multiple of erase size %x\n",
+               fprintf(stderr, "Offset %" PRIx64
+                       " not multiple of erase size %x\n",
                        offset, meminfo.erasesize);
                exit(1);
        }
        if (length % meminfo.erasesize) {
-               fprintf(stderr, "Length %llx not multiple of erase size %x\n",
+               fprintf(stderr, "Length %" PRIx64
+                       " not multiple of erase size %x\n",
                        length, meminfo.erasesize);
                exit(1);
        }
        if (length + offset > mem_size) {
-               fprintf(stderr, "Length %llx + offset %llx exceeds device size %llx\n",
+               fprintf(stderr, "Length %" PRIx64 " + offset %" PRIx64
+                       " exceeds device size %" PRIx64 "\n",
                        length, offset, mem_size);
                exit(1);
        }
index e040bab5d4aa18be8c8bd1b7a818069874c9c74e..66af12afdb75cf76aba198ae6048739f1458a94d 100644 (file)
@@ -264,10 +264,10 @@ int main(int argc, char * const argv[])
 
         int from = (j == 0) ? 0 : args.bin_thresholds[j - 1];
         if (j == args.nbins - 1)
-            printf("%-8d ..      inf: %8d %8d %8llu %8d\n",
+            printf("%-8d ..      inf: %8d %8d %8" PRIu64 " %8d\n",
                 from, bins[j].cnt, bins[j].min, bins[j].mean, bins[j].max);
         else
-            printf("%-8d .. %8d: %8d %8d %8llu %8d\n",
+            printf("%-8d .. %8d: %8d %8d %8" PRIu64 " %8d\n",
                 from, args.bin_thresholds[j] - 1,
                 bins[j].cnt, bins[j].min, bins[j].mean, bins[j].max);
     }