From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:40167) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QksDK-0001yr-PA for qemu-devel@nongnu.org; Sun, 24 Jul 2011 02:30:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QksDJ-0006lp-GN for qemu-devel@nongnu.org; Sun, 24 Jul 2011 02:30:58 -0400 Received: from mx1.redhat.com ([209.132.183.28]:42464) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QksDJ-0006lj-9E for qemu-devel@nongnu.org; Sun, 24 Jul 2011 02:30:57 -0400 Date: Sun, 24 Jul 2011 09:30:49 +0300 From: Gleb Natapov Message-ID: <20110724063049.GM3044@redhat.com> References: <20110722095116.56bf87c5.usui@mxm.nes.nec.co.jp> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20110722095116.56bf87c5.usui@mxm.nes.nec.co.jp> Subject: Re: [Qemu-devel] Boot order problem List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Minoru Usui Cc: qemu-devel@nongnu.org On Fri, Jul 22, 2011 at 09:51:16AM +0900, Minoru Usui wrote: > Hi, everyone > > I'm in trouble about boot order of VM. > If anyone know cause of this problem, please let me know. > The cause of the "problem" is the design. booindex and -boot only modifies the order in which bios will search for bootable device. It does not exclude devices from a boot device list. > On following environment, I tried to boot from IDE CD-ROM device > without inserting any bootable media, which is expected to fail, > but VM was booting up from virtio HDD which was not specified as bootable device. > > * host : RHEL6.1(x86_64) > guest: RHEL6.1(x86_64) > * VM has IDE CD-ROM and virtio HDD. > * There is no bootable media in IDE CD-ROM. > * RHEL6.1 is installed in virtio HDD > * Only IDE CD-ROM was spcified as bootable device. > * XML configuration of libvirt is below. > I tested and setting, > but both are booting up from virtio HDD. > ------------------------------------------------------- > [ setting version] > > hvm > > > > > [ setting version] > > > > > >
> > ------------------------------------------------------- > > I installed latest qemu-kvm to /usr/local/qemu, and replaced > /usr/libexec/qemu-kvm to /user/local/qemu/bin/qemu-system-x86_64, > but it was booting up from virtio HDD. > > On RHEL6.0 host, I tested setting version, > VM didn't boot up from virtio HDD. > it cannot boot up from CD-ROM. (expected behaviour) > This is not expected behaviour. Expected behaviour is VM boots from HDD. The only way I can explain behaviour you describe above is that the bios you are using for RHEL6.0 rpm does not support booting from virtio HDD. You can test this but making HDD to be ide and retry your test. > I checked qemu-kvm option by ps command, > but I think correct -boot or bootindex of -device option is specified. > > [ setting version(RHEL6.1 host)] > qemu 9871 1 74 16:22 ? 00:00:25 /usr/libexec/qemu-kvm -S -M rhel6.1.0 -enable-kvm -m 2048 > -smp 8,sockets=8,cores=1,threads=1 -name RHEL6.1-GA -uuid 49703959-f0b0-9864-5788-4bc07028bac4 -nodefconfig > -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/RHEL6.1-GA.monitor,server,nowait > -mon chardev=charmonitor,id=monitor,mode=readline -rtc base=utc -boot order=d,menu=off > -drive file=/work/libvirt/images/RHEL6.1GA_x86_64_full_file.img,if=none,id=drive-virtio-disk0,format=qcow2,cache=none,aio=threads > -device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0 > -drive file=/tmp/not_bootable_image.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 > -device virtio-net-pci,vlan=0,id=net0,mac=52:54:00:0b:68:82,bus=pci.0,addr=0x3 -net tap,fd=21,vlan=0,name=hostnet0 > -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -device usb-tablet,id=input0 > -vnc 127.0.0.1:0 -vga cirrus -device intel-hda,id=sound0,bus=pci.0,addr=0x4 > -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 > > -> "-boot order=d" is specified > > > [ setting version(RHEL6.1 host)] > qemu 4073 1 23 10:08 ? 00:00:37 /usr/libexec/qemu-kvm -S -M rhel6.1.0 -enable-kvm -m 2048 > -smp 8,sockets=8,cores=1,threads=1 -name RHEL6.1-GA -uuid 49703959-f0b0-9864-5788-4bc07028bac4 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/RHEL6.1-GA.monitor,server,nowait > -mon chardev=charmonitor,id=monitor,mode=readline -rtc base=utc -drive file=/work/libvirt/images/RHEL6.1GA_x86_64_full_file.img,if=none,id=drive-virtio-disk0,format=qcow2,cache=none,aio=threads > -device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0 > -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw > -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1 > -device virtio-net-pci,vlan=0,id=net0,mac=52:54:00:0b:68:82,bus=pci.0,addr=0x3 -net tap,fd=21,vlan=0,name=hostnet0 > -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -device usb-tablet,id=input0 > -vnc 127.0.0.1:0 -vga cirrus -device intel-hda,id=sound0,bus=pci.0,addr=0x4 > -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 > > -> "bootindex=1" is specified for IDE CD-ROM device only. > > > Next, I suspected seabios, but it was same version of RHEL6.0 and RHEL6.1. > > # rpm -q seabios > seabios-0.6.1.2-3.el6.x86_64 > This bios supports booting from virtio and when I do the same test as you, qemu boots from virtio HDD. Try to reinstall seabios rpm. > What causes this problem? > -- > Minoru Usui -- Gleb.