]> git.proxmox.com Git - mirror_qemu.git/commit - hw/i386/pc_q35.c
pc: avoid duplicate names for ROM MRs
authorMichael S. Tsirkin <mst@redhat.com>
Thu, 6 Mar 2014 12:57:09 +0000 (14:57 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 11 Mar 2014 11:25:48 +0000 (13:25 +0200)
commitac41881b48858b279960a17c07f0b159af91e75a
tree4fdc78f45b3fe888b3aefd4c13ab4a0c8170e469
parent98bc3ab0f256cb983700089770db0823e59c7ceb
pc: avoid duplicate names for ROM MRs

Since
commit 04920fc0faa4760f9c4fc0e73b992b768099be70
    loader: store FW CFG ROM files in RAM
RAM MRs including ROM files in FW CFGs are created
and named using the file basename.

This becomes problematic if these names are
supplied by user, since the basename might not
be unique.

There are two cases we care about:
- option-rom flag.
- option ROM for devices. This triggers e.g. when
  using rombar=0.

At the moment we get an assert. E.g
qemu -option-rom /usr/share/ipxe/8086100e.rom -option-rom
/usr/share/ipxe.efi/8086100e.rom
RAMBlock "/rom@genroms/8086100e.rom" already registered, abort!

This is a regression from 1.6.

For now let's keep it simple and just avoid creating the
MRs in case of option ROMs.

when using 1.7 machine types, enable
option ROMs in RAM to match that version.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/core/loader.c
hw/i386/pc_piix.c
hw/i386/pc_q35.c
include/hw/loader.h