I'm pretty sure this is a bug in the linked commit above, in that it does not account for this statement in the multiboot spec:
`load_end_addr' Contains the physical address of the end of the data segment. (load_end_addr - load_addr) specifies how much data to load. This implies that the text and data segments must be consecutive in the OS image; this is true for existing a.out executable formats. If this field is zero, the boot loader assumes that the text and data segments occupy the whole OS image file. Specifically, "If this field is zero..." ** Also affects: qemu Importance: Undecided Status: New -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/957622 Title: kvm -kernel with grub multiboot kernel dumps core or exits Status in QEMU: New Status in “qemu-kvm” package in Ubuntu: New Bug description: I attempted to use kvm -kernel with a grub multiboot image, specifically grub-maverick-20100729.img at [1]. That file was built using [2] $ url="http://bazaar.launchpad.net/~ubuntu-on-ec2/vmbuilder/automated-ec2-builds/download/head:/grubmaverick20100729-20100729071944-bevge631maio9jpl-2/grub-maverick-20100729.img" $ wget $url -O grub-maverick-20100729.img $ qemu-kvm create -f qcow2 disk.img 1G $ kvm -curses -kernel grub-maverick-20100729.img -drive file=disk.img,if=virtio This process works fine on oneiric and you will see a curses interface, and some output of grub looking for a image to boot. On my laptop (with kvm support), I saw: $ kvm -curses -kernel grub-maverick-20100729.img -drive file=disk.img,if=virtio; fread() failed $ echo $? 1 On a kvm guest (via openstack instance), it crashed differently: $ kvm -curses -kernel grub-maverick-20100729.img -drive file=disk.img,if=virtio Could not access KVM kernel module: No such file or directory failed to initialize KVM: No such file or directory Back to tcg accelerator. GLib-ERROR **: /build/buildd/glib2.0-2.31.20/./glib/gmem.c:165: failed to allocate 4293918720 bytes Trace/breakpoint trap (core dumped) Just for a test, I tried loading kvm-amd, got nested kvm virtualization, but the instance fails the same way. -- [1] http://bazaar.launchpad.net/~ubuntu-on-ec2/vmbuilder/automated-ec2-builds/files/head:/loaders/ [2] http://bazaar.launchpad.net/~ubuntu-on-ec2/vmbuilder/automated-ec2-builds/view/head:/mk-image-mb-loader ProblemType: Bug DistroRelease: Ubuntu 12.04 Package: kvm (not installed) ProcVersionSignature: User Name 3.2.0-18.29-virtual 3.2.9 Uname: Linux 3.2.0-18-virtual x86_64 ApportVersion: 1.94.1-0ubuntu2 Architecture: amd64 CurrentDmesg: [27230.320857] init: qemu-kvm pre-start process (8659) terminated with status 1 [27230.361904] init: qemu-kvm post-stop process (8664) terminated with status 1 [27249.426836] kvm[9021] trap int3 ip:7f44c2bbc13b sp:7fff447e1120 error:0 [27263.380598] kvm[9283] trap int3 ip:7f3fba9f713b sp:7fff8b55d1a0 error:0 Date: Sat Mar 17 01:48:13 2012 Ec2AMI: ami-00000000 Ec2AMIManifest: FIXME Ec2AvailabilityZone: nova Ec2InstanceType: m1.small Ec2Kernel: unavailable Ec2Ramdisk: unavailable KvmCmdLine: Error: command ['ps', '-C', 'kvm', '-F'] failed with exit code 1: UID PID PPID C SZ RSS PSR STIME TTY TIME CMD Lsusb: Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd MachineType: Bochs Bochs ProcEnviron: TERM=screen PATH=(custom, user) LANG=en_US.UTF-8 SHELL=/bin/bash ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-18-virtual root=LABEL=cloudimg-rootfs ro console=ttyS0 ProcModules: acpiphp 24231 0 - Live 0x0000000000000000 floppy 70365 0 - Live 0x0000000000000000 psmouse 87603 0 - Live 0x0000000000000000 serio_raw 13211 0 - Live 0x0000000000000000 virtio_balloon 13108 0 - Live 0x0000000000000000 SourcePackage: qemu-kvm UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 01/01/2007 dmi.bios.vendor: Bochs dmi.bios.version: Bochs dmi.chassis.type: 1 dmi.chassis.vendor: Bochs dmi.modalias: dmi:bvnBochs:bvrBochs:bd01/01/2007:svnBochs:pnBochs:pvr:cvnBochs:ct1:cvr: dmi.product.name: Bochs dmi.sys.vendor: Bochs To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/957622/+subscriptions