Skip to content
  • Mark Rutland's avatar
    arm64: remove pr_cont abuse from mem_init · f7881bd6
    Mark Rutland authored
    
    
    All the lines printed by mem_init are independent, with each ending with
    a newline. While they logically form a large block, none are actually
    continuations of previous lines.
    
    The kernel-side printk code and the userspace demsg tool differ in their
    handling of KERN_CONT following a newline, and while this isn't always a
    problem kernel-side, it does cause difficulty for userspace. Using
    pr_cont causes the userspace tool to not print line prefix (e.g.
    timestamps) even when following a newline, mis-aligning the output and
    making it harder to read, e.g.
    
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     modules : 0xffff000000000000 - 0xffff000008000000   (   128 MB)
        vmalloc : 0xffff000008000000 - 0xffff7dffbfff0000   (129022 GB)
          .text : 0xffff000008080000 - 0xffff0000088b0000   (  8384 KB)
        .rodata : 0xffff0000088b0000 - 0xffff000008c50000   (  3712 KB)
          .init : 0xffff000008c50000 - 0xffff000008d50000   (  1024 KB)
          .data : 0xffff000008d50000 - 0xffff000008e25200   (   853 KB)
           .bss : 0xffff000008e25200 - 0xffff000008e6bec0   (   284 KB)
        fixed   : 0xffff7dfffe7fd000 - 0xffff7dfffec00000   (  4108 KB)
        PCI I/O : 0xffff7dfffee00000 - 0xffff7dffffe00000   (    16 MB)
        vmemmap : 0xffff7e0000000000 - 0xffff800000000000   (  2048 GB maximum)
                  0xffff7e0000000000 - 0xffff7e0026000000   (   608 MB actual)
        memory  : 0xffff800000000000 - 0xffff800980000000   ( 38912 MB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=6, Nodes=1
    
    Fix this by using pr_notice consistently for all lines, which both the
    kernel and userspace are happy with.
    
    Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: James Morse <james.morse@arm.com>
    Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
    f7881bd6