From: Martin Schwidefsky Date: Sat, 4 Feb 2017 11:38:12 +0000 (+0100) Subject: s390/topology: correct allocation of topology information X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=8676caa4fb7fc02b2c76842a0024919d0caa4b8d;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git s390/topology: correct allocation of topology information The data stored by the STSI instruction can be up to a page in size but the memblock_virt_alloc allocation for tl_info only specifies 16 bytes. The memory after the short allocation is overwritten every time arch_update_cpu_topology is called. Fixes: 8c9105802235 "s390/numa: establish cpu to node mapping early" Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index 7b2b19b0b294..2cd5f4f1013c 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -458,7 +458,7 @@ void __init topology_init_early(void) set_sched_topology(s390_topology); if (!MACHINE_HAS_TOPOLOGY) goto out; - tl_info = memblock_virt_alloc(sizeof(*tl_info), PAGE_SIZE); + tl_info = memblock_virt_alloc(PAGE_SIZE, PAGE_SIZE); info = tl_info; store_topology(info); pr_info("The CPU configuration topology of the machine is: %d %d %d %d %d %d / %d\n",