mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-12 07:37:31 -04:00
Merge "msm: Update the kernel log messages"
This commit is contained in:
commit
2cb1a30fe9
2 changed files with 105 additions and 0 deletions
|
|
@ -462,6 +462,56 @@ static void __init free_highpages(void)
|
|||
#endif
|
||||
}
|
||||
|
||||
#define MLK(b, t) (b), (t), (((t) - (b)) >> 10)
|
||||
#define MLM(b, t) (b), (t), (((t) - (b)) >> 20)
|
||||
#define MLK_ROUNDUP(b, t) (b), (t), (DIV_ROUND_UP(((t) - (b)), SZ_1K))
|
||||
|
||||
#ifdef CONFIG_ENABLE_VMALLOC_SAVING
|
||||
static void print_vmalloc_lowmem_info(void)
|
||||
{
|
||||
struct memblock_region *reg, *prev_reg = NULL;
|
||||
|
||||
pr_notice(
|
||||
" vmalloc : 0x%08lx - 0x%08lx (%4ld MB)\n",
|
||||
MLM((unsigned long)high_memory, VMALLOC_END));
|
||||
|
||||
for_each_memblock_rev(memory, reg) {
|
||||
phys_addr_t start_phys = reg->base;
|
||||
phys_addr_t end_phys = reg->base + reg->size;
|
||||
|
||||
if (start_phys > arm_lowmem_limit)
|
||||
continue;
|
||||
|
||||
if (end_phys > arm_lowmem_limit)
|
||||
end_phys = arm_lowmem_limit;
|
||||
|
||||
if (prev_reg == NULL) {
|
||||
prev_reg = reg;
|
||||
|
||||
pr_notice(
|
||||
" lowmem : 0x%08lx - 0x%08lx (%4ld MB)\n",
|
||||
MLM((unsigned long)__va(start_phys),
|
||||
(unsigned long)__va(end_phys)));
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
pr_notice(
|
||||
" vmalloc : 0x%08lx - 0x%08lx (%4ld MB)\n",
|
||||
MLM((unsigned long)__va(end_phys),
|
||||
(unsigned long)__va(prev_reg->base)));
|
||||
|
||||
|
||||
pr_notice(
|
||||
" lowmem : 0x%08lx - 0x%08lx (%4ld MB)\n",
|
||||
MLM((unsigned long)__va(start_phys),
|
||||
(unsigned long)__va(end_phys)));
|
||||
|
||||
prev_reg = reg;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* mem_init() marks the free areas in the mem_map and tells us how much
|
||||
* memory is free. This is done after various parts of the system have
|
||||
|
|
@ -488,6 +538,52 @@ void __init mem_init(void)
|
|||
|
||||
mem_init_print_info(NULL);
|
||||
|
||||
pr_notice("Virtual kernel memory layout:\n"
|
||||
" vector : 0x%08lx - 0x%08lx (%4ld kB)\n"
|
||||
#ifdef CONFIG_HAVE_TCM
|
||||
" DTCM : 0x%08lx - 0x%08lx (%4ld kB)\n"
|
||||
" ITCM : 0x%08lx - 0x%08lx (%4ld kB)\n"
|
||||
#endif
|
||||
" fixmap : 0x%08lx - 0x%08lx (%4ld kB)\n",
|
||||
MLK(VECTORS_BASE, VECTORS_BASE + PAGE_SIZE),
|
||||
#ifdef CONFIG_HAVE_TCM
|
||||
MLK(DTCM_OFFSET, (unsigned long) dtcm_end),
|
||||
MLK(ITCM_OFFSET, (unsigned long) itcm_end),
|
||||
#endif
|
||||
MLK(FIXADDR_START, FIXADDR_END));
|
||||
#ifdef CONFIG_ENABLE_VMALLOC_SAVING
|
||||
print_vmalloc_lowmem_info();
|
||||
#else
|
||||
pr_notice(
|
||||
" vmalloc : 0x%08lx - 0x%08lx (%4ld MB)\n"
|
||||
" lowmem : 0x%08lx - 0x%08lx (%4ld MB)\n",
|
||||
MLM(VMALLOC_START, VMALLOC_END),
|
||||
MLM(PAGE_OFFSET, (unsigned long)high_memory));
|
||||
#endif
|
||||
pr_notice(
|
||||
#ifdef CONFIG_HIGHMEM
|
||||
" pkmap : 0x%08lx - 0x%08lx (%4ld MB)\n"
|
||||
#endif
|
||||
#ifdef CONFIG_MODULES
|
||||
" modules : 0x%08lx - 0x%08lx (%4ld MB)\n"
|
||||
#endif
|
||||
" .text : 0x%pK - 0x%pK (%4d kB)\n"
|
||||
" .init : 0x%pK - 0x%pK (%4d kB)\n"
|
||||
" .data : 0x%pK - 0x%pK (%4d kB)\n"
|
||||
" .bss : 0x%pK - 0x%pK (%4d kB)\n",
|
||||
#ifdef CONFIG_HIGHMEM
|
||||
MLM(PKMAP_BASE, (PKMAP_BASE) + (LAST_PKMAP) *
|
||||
(PAGE_SIZE)),
|
||||
#endif
|
||||
#ifdef CONFIG_MODULES
|
||||
MLM(MODULES_VADDR, MODULES_END),
|
||||
#endif
|
||||
|
||||
MLK_ROUNDUP(_text, _etext),
|
||||
MLK_ROUNDUP(__init_begin, __init_end),
|
||||
MLK_ROUNDUP(_sdata, _edata),
|
||||
MLK_ROUNDUP(__bss_start, __bss_stop));
|
||||
|
||||
/*
|
||||
* Check boundaries twice: Some fundamental inconsistencies can
|
||||
* be detected at build time already.
|
||||
|
|
@ -503,6 +599,10 @@ void __init mem_init(void)
|
|||
#endif
|
||||
}
|
||||
|
||||
#undef MLK
|
||||
#undef MLM
|
||||
#undef MLK_ROUNDUP
|
||||
|
||||
#ifdef CONFIG_STRICT_KERNEL_RWX
|
||||
struct section_perm {
|
||||
const char *name;
|
||||
|
|
|
|||
|
|
@ -534,6 +534,11 @@ static inline unsigned long memblock_region_reserved_end_pfn(const struct memblo
|
|||
for (i = 0, rgn = &memblock_type->regions[0]; \
|
||||
i < memblock_type->cnt; \
|
||||
i++, rgn = &memblock_type->regions[i])
|
||||
#define for_each_memblock_rev(memblock_type, region) \
|
||||
for (region = memblock.memblock_type.regions + \
|
||||
memblock.memblock_type.cnt - 1; \
|
||||
region >= memblock.memblock_type.regions; \
|
||||
region--)
|
||||
|
||||
extern void *alloc_large_system_hash(const char *tablename,
|
||||
unsigned long bucketsize,
|
||||
|
|
|
|||
Loading…
Reference in a new issue