qemu-system-x86_64 segfaults if using -no-kvm with -m 4096 or greater
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
qemu-kvm (Ubuntu) |
Fix Released
|
Low
|
Serge Hallyn | ||
Lucid |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: qemu-kvm
Latest Ubuntu 10.04 amd64.
I have a FreeBSD guest I had running quite slowly with the kvm-intel module loaded, so I shut down the guest, and passed the -no-kvm flag to kvm.
Much to my surprise, I experienced an immediate segmentation fault:
$ qemu-system-x86_64 -no-kvm -vnc :0 -hda fbsd_dev -m 4096
pci_add_option_rom: failed to find romfile "pxe-rtl8139.bin"
Segmentation fault (core dumped)
In contrast:
$ qemu-system-x86_64 -no-kvm -vnc :0 -hda fbsd_dev -m 4095
pci_add_option_rom: failed to find romfile "pxe-rtl8139.bin"
[runs happily forever]
I'm presuming this is some mishandled behavior of qemu having a limit of memory being < 4096m when not using VT bits or somesuch, but it was quite disruptive, and it didn't occur to me to try varying the memory amount for most of a day.
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: qemu-kvm 0.12.3+
ProcVersionSign
Uname: Linux 2.6.32-22-generic x86_64
NonfreeKernelMo
Architecture: amd64
Date: Wed Jul 7 00:32:52 2010
InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release amd64 (20100427.1)
KvmCmdLine: Error: command ['ps', '-C', 'kvm', '-F'] failed with exit code 1: UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
MachineType: Dell Inc. Precision WorkStation T5500
ProcCmdLine: BOOT_IMAGE=
ProcEnviron:
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: qemu-kvm
dmi.bios.date: 04/12/2010
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A05
dmi.board.name: 0CRH6C
dmi.board.vendor: Dell Inc.
dmi.board.version: A00
dmi.chassis.type: 7
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.
dmi.product.name: Precision WorkStation T5500
dmi.sys.vendor: Dell Inc.
IMPACT: Specifying too much memory for guest causes a segfault instead of an
error message.
FIX: A patch, taken from upstream, which detects the error condition and prints
an error message (and exits) instead of continuing and segfaulting.
PATCH: can be seen at
https:/
TO REPRODUCE: see the detailed incantation above.
REGRESSION POTENTIAL: Only one location in the code is patched, and simply
catches the pathological condition. There should be no regression.
Changed in qemu-kvm (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → Low |
description: | updated |
I find the following note in the changelog for qemu 0.12.4:
- Fix segfault with ram_size > 4095M without kvm (Ryan Harper)