• Qian Cai's avatar
    mm/debug.c: add a cast to u64 for atomic64_read() · 44dc1b1f
    Qian Cai authored
    atomic64_read() on ppc64le returns "long int", so fix the same way as
    commit d549f545 ("drm/virtio: use %llu format string form
    atomic64_t") by adding a cast to u64, which makes it work on all arches.
    
        In file included from ./include/linux/printk.h:7,
                         from ./include/linux/kernel.h:15,
                         from mm/debug.c:9:
        mm/debug.c: In function 'dump_mm':
        ./include/linux/kern_levels.h:5:18: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 19 has type 'long int' [-Wformat=]
         #define KERN_SOH "A"  /* ASCII Start Of Header */
                          ^~~~~~
        ./include/linux/kern_levels.h:8:20: note: in expansion of macro
        'KERN_SOH'
         #define KERN_EMERG KERN_SOH "0" /* system is unusable */
                            ^~~~~~~~
        ./include/linux/printk.h:297:9: note: in expansion of macro 'KERN_EMERG'
          printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__)
                 ^~~~~~~~~~
        mm/debug.c:133:2: note: in expansion of macro 'pr_emerg'
          pr_emerg("mm %px mmap %px seqnum %llu task_size %lu"
          ^~~~~~~~
        mm/debug.c:140:17: note: format string is defined here
           "pinned_vm %llx data_vm %lx exec_vm %lx stack_vm %lx"
                      ~~~^
                      %lx
    
    Link: http://lkml.kernel.org/r/20190310183051.87303-1-cai@lca.pw
    Fixes: 70f8a3ca ("mm: make mm->pinned_vm an atomic64 counter")
    Signed-off-by: default avatarQian Cai <cai@lca.pw>
    Acked-by: default avatarDavidlohr Bueso <dbueso@suse.de>
    Cc: Jason Gunthorpe <jgg@mellanox.com>
    Cc: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    44dc1b1f
debug.c 5.92 KB