summaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2017-02-04 12:38:12 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2017-02-07 07:27:12 +0100
commit8676caa4fb7fc02b2c76842a0024919d0caa4b8d (patch)
tree63393ce7ff784216f40411496566e718f6945543 /arch/s390/kernel
parentda8fd820f389a0e29080b14c61bf5cf1d8ef5ca1 (diff)
downloadlinux-8676caa4fb7fc02b2c76842a0024919d0caa4b8d.tar.gz
linux-8676caa4fb7fc02b2c76842a0024919d0caa4b8d.tar.xz
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 <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel')
-rw-r--r--arch/s390/kernel/topology.c2
1 files changed, 1 insertions, 1 deletions
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",