Bug 901542

Summary: qemu doesn't depend on seabios-bin, resulting in error: "qemu: PC system firmware (pflash) must be a multiple of 0x1000"
Product: Red Hat Enterprise Linux 7 Reporter: Richard W.M. Jones <rjones>
Component: qemu-kvmAssignee: Miroslav Rezanina <mrezanin>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 7.0CC: acathrow, areis, bfan, hhuang, jprokes, juzhang, leiwang, lsoft-tool-inc, ltroan, mrezanin, qiguo, tjamrisk, virt-maint, wshi
Target Milestone: betaKeywords: Regression
Target Release: 7.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-1.4.0-1.el7.x86_64.rpm Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-13 05:20:28 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 807834, 1050219    

Description Richard W.M. Jones 2013-01-18 08:02:11 EST
Description of problem:

could not create appliance through libvirt: internal error process exited while connecting to monitor: qemu: PC system firmware (pflash) must be a multiple of 0x1000 [code=1 domain=10] 

... whatever that means.

The full log is here:

http://download.devel.redhat.com/brewroot/work/tasks/8707/5288707/build.log

Version-Release number of selected component (if applicable):

qemu-kvm 2:1.3.0-3.el7

How reproducible:

100%

Steps to Reproduce:
1. Try building libguestfs.
Comment 1 Richard W.M. Jones 2013-01-18 08:04:01 EST
Possibly a missing BIOS image somewhere?
http://comments.gmane.org/gmane.comp.emulators.qemu/165937
Comment 3 Richard W.M. Jones 2013-01-19 05:38:49 EST
I cannot reproduce this outside Koji builds :-(
Comment 4 Richard W.M. Jones 2013-01-19 06:06:26 EST
Ah ha!

I found that in the Koji buildroot, seabios-bin was not being
installed.  This is because qemu-kvm doesn't depend on seabios-bin,
and in fact when I removed seabios on my test machine I got exactly
the same error.

I think qemu-kvm should have a dependency on seabios-bin.
Comment 5 Martin 2013-01-28 10:02:51 EST
Gnome Boxes 3.4.7 is missing qemu-kvm on seabios dependency, too.

(gnome-boxes:2617): Boxes-WARNING **: vm-creator.vala:130: Failed to start domain 'fedora18': Unable to start domain: internal error Process exited while reading console log output: char device redirected to /dev/pts/2
qemu: could not load PC BIOS 'bios.bin'

This leads Boxes to VM creating failed.


Installing seabios, seabios-bin, seavgabios-bin fixes the fail.
Comment 6 Richard W.M. Jones 2013-02-27 05:28:41 EST
Adding Cole ...
Comment 7 Michal Novotny 2013-02-28 07:23:19 EST
(In reply to comment #4)
> Ah ha!
> 
> I found that in the Koji buildroot, seabios-bin was not being
> installed.  This is because qemu-kvm doesn't depend on seabios-bin,
> and in fact when I removed seabios on my test machine I got exactly
> the same error.
> 
> I think qemu-kvm should have a dependency on seabios-bin.

Rich, I'm aware of this issue. Please see the bug 912433 that's about the dependencies required. Most likely we need to wait for new compose of RHEL-7.

See comment on this bug.

Michal
Comment 8 Ademar Reis 2013-03-01 16:03:21 EST
Reassigning to Mirek, who is taking care of our rebase to qemu-1.4 and should be able to take care of this.
Comment 9 Miroslav Rezanina 2013-03-15 03:52:13 EDT
All the required dependencies are present in rebased package qemu-kvm-1.4.0-1.el7.x86_64.rpm
Comment 10 Miroslav Rezanina 2013-04-04 05:19:34 EDT
*** Bug 927034 has been marked as a duplicate of this bug. ***
Comment 11 Martin Kletzander 2013-06-11 03:59:42 EDT
*** Bug 948271 has been marked as a duplicate of this bug. ***
Comment 12 Qian Guo 2013-11-01 03:07:20 EDT
Reproduce this bug with qemu-kvm-1.3.0-3.el7.x86_64.rpm
Steps:
Check the dependencies of qemu-kvm-1.3.0-3.el7.x86_64.rpm
# rpm -qpR qemu-kvm-1.3.0-3.el7.x86_64.rpm 
/bin/sh
/bin/sh
config(qemu-kvm) = 2:1.3.0-3.el7
libSDL-1.2.so.0()(64bit)
libX11.so.6()(64bit)
libaio.so.1()(64bit)
libaio.so.1(LIBAIO_0.1)(64bit)
libaio.so.1(LIBAIO_0.4)(64bit)
libasound.so.2()(64bit)
libasound.so.2(ALSA_0.9)(64bit)
libasound.so.2(ALSA_0.9.0rc4)(64bit)
libbluetooth.so.3()(64bit)
libbrlapi.so.0.5()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.15)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.2)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.6)(64bit)
libc.so.6(GLIBC_2.7)(64bit)
libc.so.6(GLIBC_2.8)(64bit)
libc.so.6(GLIBC_2.9)(64bit)
libcurl.so.4()(64bit)
libdl.so.2()(64bit)
libglib-2.0.so.0()(64bit)
libgnutls.so.26()(64bit)
libgnutls.so.26(GNUTLS_1_4)(64bit)
libgthread-2.0.so.0()(64bit)
libjpeg.so.62()(64bit)
libjpeg.so.62(LIBJPEG_6.2)(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libncurses.so.5()(64bit)
libnspr4.so()(64bit)
libnss3.so()(64bit)
libnss3.so(NSS_3.12)(64bit)
libnss3.so(NSS_3.2)(64bit)
libnss3.so(NSS_3.3)(64bit)
libnss3.so(NSS_3.4)(64bit)
libnss3.so(NSS_3.5)(64bit)
libnss3.so(NSS_3.9.2)(64bit)
libnss3.so(NSS_3.9.3)(64bit)
libnssutil3.so()(64bit)
libpixman-1.so.0()(64bit)
libplc4.so()(64bit)
libplds4.so()(64bit)
libpng15.so.15()(64bit)
libpng15.so.15(PNG15_0)(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
libpulse.so.0()(64bit)
libpulse.so.0(PULSE_0)(64bit)
librt.so.1()(64bit)
librt.so.1(GLIBC_2.2.5)(64bit)
librt.so.1(GLIBC_2.3.3)(64bit)
libsasl2.so.2()(64bit)
libseccomp.so.1()(64bit)
libsmime3.so()(64bit)
libspice-server.so.1()(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.0)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.1)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.2)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.3)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.4)(64bit)
libspice-server.so.1(SPICE_SERVER_0.11.2)(64bit)
libspice-server.so.1(SPICE_SERVER_0.6.0)(64bit)
libspice-server.so.1(SPICE_SERVER_0.8.1)(64bit)
libspice-server.so.1(SPICE_SERVER_0.8.2)(64bit)
libspice-server.so.1(SPICE_SERVER_0.8.3)(64bit)
libssl3.so()(64bit)
libtinfo.so.5()(64bit)
libusbredirparser.so.1()(64bit)
libutil.so.1()(64bit)
libutil.so.1(GLIBC_2.2.5)(64bit)
libuuid.so.1()(64bit)
libuuid.so.1(UUID_1.0)(64bit)
libz.so.1()(64bit)
qemu-img = 2:1.3.0-3.el7
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1


There's no seabios\*, so the qemu-kvm did not dependence seabios-bin or seabios, so it is reproduced

Verify this bug with qemu-kvm-1.5.3-10.el7.x86_64.rpm

Steps:
Check the dependencies of qemu-kvm-1.3.0-3.el7.x86_64.rpm

#  rpm -qpR qemu-kvm-1.5.3-10.el7.x86_64.rpm
/bin/sh
config(qemu-kvm) = 10:1.5.3-10.el7
ipxe-roms-qemu
libaio.so.1()(64bit)
libaio.so.1(LIBAIO_0.1)(64bit)
libaio.so.1(LIBAIO_0.4)(64bit)
libasound.so.2()(64bit)
libasound.so.2(ALSA_0.9)(64bit)
libasound.so.2(ALSA_0.9.0rc4)(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.2)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.6)(64bit)
libc.so.6(GLIBC_2.7)(64bit)
libc.so.6(GLIBC_2.9)(64bit)
libdl.so.2()(64bit)
libgfapi.so.0()(64bit)
libgfrpc.so.0()(64bit)
libgfxdr.so.0()(64bit)
libglib-2.0.so.0()(64bit)
libgnutls.so.28()(64bit)
libgnutls.so.28(GNUTLS_1_4)(64bit)
libgthread-2.0.so.0()(64bit)
libiscsi.so.2()(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libnspr4.so()(64bit)
libnss3.so()(64bit)
libnss3.so(NSS_3.12)(64bit)
libnss3.so(NSS_3.2)(64bit)
libnss3.so(NSS_3.3)(64bit)
libnss3.so(NSS_3.5)(64bit)
libnss3.so(NSS_3.9.2)(64bit)
libnss3.so(NSS_3.9.3)(64bit)
libnssutil3.so()(64bit)
libpixman-1.so.0()(64bit)
libplc4.so()(64bit)
libplds4.so()(64bit)
libpng15.so.15()(64bit)
libpng15.so.15(PNG15_0)(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
libpulse.so.0()(64bit)
libpulse.so.0(PULSE_0)(64bit)
librt.so.1()(64bit)
librt.so.1(GLIBC_2.2.5)(64bit)
librt.so.1(GLIBC_2.3.3)(64bit)
libsasl2.so.3()(64bit)
libseccomp >= 1.0.0
libseccomp.so.2()(64bit)
libsmime3.so()(64bit)
libspice-server.so.1()(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.0)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.1)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.2)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.3)(64bit)
libspice-server.so.1(SPICE_SERVER_0.10.4)(64bit)
libspice-server.so.1(SPICE_SERVER_0.11.2)(64bit)
libspice-server.so.1(SPICE_SERVER_0.12.3)(64bit)
libspice-server.so.1(SPICE_SERVER_0.6.0)(64bit)
libspice-server.so.1(SPICE_SERVER_0.8.1)(64bit)
libspice-server.so.1(SPICE_SERVER_0.8.2)(64bit)
libspice-server.so.1(SPICE_SERVER_0.8.3)(64bit)
libssl3.so()(64bit)
libusb-1.0.so.0()(64bit)
libusbredirparser.so.1()(64bit)
libutil.so.1()(64bit)
libutil.so.1(GLIBC_2.2.5)(64bit)
libuuid.so.1()(64bit)
libuuid.so.1(UUID_1.0)(64bit)
libz.so.1()(64bit)
qemu-img = 10:1.5.3-10.el7
qemu-kvm-common = 10:1.5.3-10.el7
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
seabios-bin                               --------------------  dependency
seavgabios-bin
sgabios-bin
rpmlib(PayloadIsXz) <= 5.2-1

So according to above, this bug is fixed by qemu-kvm-1.5.3-10.el7.x86_64.rpm.

Hi, Miroslav

Could we verify this bug as above, if anything wrong, please tell me.

Thanks
Comment 14 juzhang 2013-11-01 03:48:52 EDT
According to comment12 and comment13, set this issue as verified.
Comment 15 Ludek Smid 2014-06-13 05:20:28 EDT
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.