mirror of https://github.com/torvalds/linux.git
When a CPU goes offline, hv_common_cpu_die() frees the
hv_synic_eventring_tail memory for the CPU. But in a normal VM (i.e., not
running in the root partition) the per-CPU memory has not been allocated,
resulting in a bad memory reference and oops when computing the argument
to kfree().
Fix this by freeing the memory only when running in the root partition.
Fixes:
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| channel.c | ||
| channel_mgmt.c | ||
| connection.c | ||
| hv.c | ||
| hv_balloon.c | ||
| hv_common.c | ||
| hv_debugfs.c | ||
| hv_kvp.c | ||
| hv_proc.c | ||
| hv_snapshot.c | ||
| hv_trace.c | ||
| hv_trace.h | ||
| hv_trace_balloon.h | ||
| hv_util.c | ||
| hv_utils_transport.c | ||
| hv_utils_transport.h | ||
| hyperv_vmbus.h | ||
| mshv.h | ||
| mshv_common.c | ||
| mshv_eventfd.c | ||
| mshv_eventfd.h | ||
| mshv_irq.c | ||
| mshv_portid_table.c | ||
| mshv_root.h | ||
| mshv_root_hv_call.c | ||
| mshv_root_main.c | ||
| mshv_synic.c | ||
| ring_buffer.c | ||
| vmbus_drv.c | ||