mirror of https://github.com/xqemu/xqemu.git
kvmvapic: Disable if there is insufficient memory
We need at least 1M of RAM to map the option ROM. Otherwise, we will corrupt host memory or even crash: $ qemu-system-x86_64 -nodefaults --enable-kvm -vnc :0 -m 640k Segmentation fault (core dumped) Reported-and-tested-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
This commit is contained in:
parent
050a46065d
commit
a9605e0317
|
@ -299,7 +299,9 @@ static int apic_init_common(SysBusDevice *dev)
|
|||
|
||||
sysbus_init_mmio(dev, &s->io_memory);
|
||||
|
||||
if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK) {
|
||||
/* Note: We need at least 1M to map the VAPIC option ROM */
|
||||
if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK &&
|
||||
ram_size >= 1024 * 1024) {
|
||||
vapic = sysbus_create_simple("kvmvapic", -1, NULL);
|
||||
}
|
||||
s->vapic = vapic;
|
||||
|
|
Loading…
Reference in New Issue