arm64: Split pr_notice("Virtual kernel memory layout...") into multiple pr_cont()
The printk() implementation has a limit of LOG_LINE_MAX (== 1024 - 32) buffer per call which the arm64 mem_init() breaches when printing the virtual memory layout with CONFIG_KASAN enabled. The result is that the last line is no longer printed. This patch splits the call into a pr_notice() + additional pr_cont() calls. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Acked-by: Mark Rutland <mark.rutland@arm.com>
This commit is contained in:
parent
cc7c0cda8f
commit
f09f1bacfe
|
@ -362,42 +362,38 @@ void __init mem_init(void)
|
||||||
#define MLG(b, t) b, t, ((t) - (b)) >> 30
|
#define MLG(b, t) b, t, ((t) - (b)) >> 30
|
||||||
#define MLK_ROUNDUP(b, t) b, t, DIV_ROUND_UP(((t) - (b)), SZ_1K)
|
#define MLK_ROUNDUP(b, t) b, t, DIV_ROUND_UP(((t) - (b)), SZ_1K)
|
||||||
|
|
||||||
pr_notice("Virtual kernel memory layout:\n"
|
pr_notice("Virtual kernel memory layout:\n");
|
||||||
#ifdef CONFIG_KASAN
|
#ifdef CONFIG_KASAN
|
||||||
" kasan : 0x%16lx - 0x%16lx (%6ld GB)\n"
|
pr_cont(" kasan : 0x%16lx - 0x%16lx (%6ld GB)\n",
|
||||||
|
MLG(KASAN_SHADOW_START, KASAN_SHADOW_END));
|
||||||
#endif
|
#endif
|
||||||
" modules : 0x%16lx - 0x%16lx (%6ld MB)\n"
|
pr_cont(" modules : 0x%16lx - 0x%16lx (%6ld MB)\n",
|
||||||
" vmalloc : 0x%16lx - 0x%16lx (%6ld GB)\n"
|
MLM(MODULES_VADDR, MODULES_END));
|
||||||
" .text : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
pr_cont(" vmalloc : 0x%16lx - 0x%16lx (%6ld GB)\n",
|
||||||
" .rodata : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
MLG(VMALLOC_START, VMALLOC_END));
|
||||||
" .init : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
pr_cont(" .text : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
||||||
" .data : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
" .rodata : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
||||||
|
" .init : 0x%p" " - 0x%p" " (%6ld KB)\n"
|
||||||
|
" .data : 0x%p" " - 0x%p" " (%6ld KB)\n",
|
||||||
|
MLK_ROUNDUP(_text, __start_rodata),
|
||||||
|
MLK_ROUNDUP(__start_rodata, _etext),
|
||||||
|
MLK_ROUNDUP(__init_begin, __init_end),
|
||||||
|
MLK_ROUNDUP(_sdata, _edata));
|
||||||
#ifdef CONFIG_SPARSEMEM_VMEMMAP
|
#ifdef CONFIG_SPARSEMEM_VMEMMAP
|
||||||
" vmemmap : 0x%16lx - 0x%16lx (%6ld GB maximum)\n"
|
pr_cont(" vmemmap : 0x%16lx - 0x%16lx (%6ld GB maximum)\n"
|
||||||
" 0x%16lx - 0x%16lx (%6ld MB actual)\n"
|
" 0x%16lx - 0x%16lx (%6ld MB actual)\n",
|
||||||
|
MLG((unsigned long)vmemmap,
|
||||||
|
(unsigned long)vmemmap + VMEMMAP_SIZE),
|
||||||
|
MLM((unsigned long)phys_to_page(memblock_start_of_DRAM()),
|
||||||
|
(unsigned long)virt_to_page(high_memory)));
|
||||||
#endif
|
#endif
|
||||||
" fixed : 0x%16lx - 0x%16lx (%6ld KB)\n"
|
pr_cont(" fixed : 0x%16lx - 0x%16lx (%6ld KB)\n",
|
||||||
" PCI I/O : 0x%16lx - 0x%16lx (%6ld MB)\n"
|
MLK(FIXADDR_START, FIXADDR_TOP));
|
||||||
" memory : 0x%16lx - 0x%16lx (%6ld MB)\n",
|
pr_cont(" PCI I/O : 0x%16lx - 0x%16lx (%6ld MB)\n",
|
||||||
#ifdef CONFIG_KASAN
|
MLM(PCI_IO_START, PCI_IO_END));
|
||||||
MLG(KASAN_SHADOW_START, KASAN_SHADOW_END),
|
pr_cont(" memory : 0x%16lx - 0x%16lx (%6ld MB)\n",
|
||||||
#endif
|
MLM(__phys_to_virt(memblock_start_of_DRAM()),
|
||||||
MLM(MODULES_VADDR, MODULES_END),
|
(unsigned long)high_memory));
|
||||||
MLG(VMALLOC_START, VMALLOC_END),
|
|
||||||
MLK_ROUNDUP(_text, __start_rodata),
|
|
||||||
MLK_ROUNDUP(__start_rodata, _etext),
|
|
||||||
MLK_ROUNDUP(__init_begin, __init_end),
|
|
||||||
MLK_ROUNDUP(_sdata, _edata),
|
|
||||||
#ifdef CONFIG_SPARSEMEM_VMEMMAP
|
|
||||||
MLG((unsigned long)vmemmap,
|
|
||||||
(unsigned long)vmemmap + VMEMMAP_SIZE),
|
|
||||||
MLM((unsigned long)phys_to_page(memblock_start_of_DRAM()),
|
|
||||||
(unsigned long)virt_to_page(high_memory)),
|
|
||||||
#endif
|
|
||||||
MLK(FIXADDR_START, FIXADDR_TOP),
|
|
||||||
MLM(PCI_IO_START, PCI_IO_END),
|
|
||||||
MLM(__phys_to_virt(memblock_start_of_DRAM()),
|
|
||||||
(unsigned long)high_memory));
|
|
||||||
|
|
||||||
#undef MLK
|
#undef MLK
|
||||||
#undef MLM
|
#undef MLM
|
||||||
|
|
Loading…
Reference in New Issue