mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
hv: allocate synic pages for all present CPUs
commit 421b8f20d3 upstream.
It may happen that not all CPUs are online when we do hv_synic_alloc() and
in case more CPUs come online later we may try accessing these allocated
structures.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
6d0511ed15
commit
879dc37cc3
@@ -411,7 +411,7 @@ int hv_synic_alloc(void)
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
for_each_online_cpu(cpu) {
|
for_each_present_cpu(cpu) {
|
||||||
hv_context.event_dpc[cpu] = kmalloc(size, GFP_ATOMIC);
|
hv_context.event_dpc[cpu] = kmalloc(size, GFP_ATOMIC);
|
||||||
if (hv_context.event_dpc[cpu] == NULL) {
|
if (hv_context.event_dpc[cpu] == NULL) {
|
||||||
pr_err("Unable to allocate event dpc\n");
|
pr_err("Unable to allocate event dpc\n");
|
||||||
@@ -482,7 +482,7 @@ void hv_synic_free(void)
|
|||||||
int cpu;
|
int cpu;
|
||||||
|
|
||||||
kfree(hv_context.hv_numa_map);
|
kfree(hv_context.hv_numa_map);
|
||||||
for_each_online_cpu(cpu)
|
for_each_present_cpu(cpu)
|
||||||
hv_synic_free_cpu(cpu);
|
hv_synic_free_cpu(cpu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user