[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 master, stable-0.12] Don't load options roms
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-devel] [PATCH v2 master, stable-0.12] Don't load options roms intended to be loaded by the bios in qemu |
Date: |
Thu, 24 Dec 2009 01:17:44 +0100 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
On Tue, Dec 22, 2009 at 11:57:02AM +0200, Avi Kivity wrote:
> The first such option rom will load at address 0, which isn't very nice,
> and the second will report a conflict and abort, which is horrible.
>
> Signed-off-by: Avi Kivity <address@hidden>
> ---
>
> Changes from v1:
> - use ->fw_file instead of ->addr to distinguish between host-loaded and
> firmware-loaded roms
> - add the same check in a couple more places
This patch is a lot better and does not break the versatile platform
anymore. I do wonder though if the same change should also be done for
find_rom() and rom_copy().
> hw/loader.c | 8 +++++++-
> 1 files changed, 7 insertions(+), 1 deletions(-)
>
> diff --git a/hw/loader.c b/hw/loader.c
> index 2ceb8eb..eef385e 100644
> --- a/hw/loader.c
> +++ b/hw/loader.c
> @@ -636,6 +636,9 @@ static void rom_reset(void *unused)
> Rom *rom;
>
> QTAILQ_FOREACH(rom, &roms, next) {
> + if (rom->fw_file) {
> + continue;
> + }
> if (rom->data == NULL)
> continue;
> cpu_physical_memory_write_rom(rom->addr, rom->data, rom->romsize);
> @@ -654,6 +657,9 @@ int rom_load_all(void)
> Rom *rom;
>
> QTAILQ_FOREACH(rom, &roms, next) {
> + if (rom->fw_file) {
> + continue;
> + }
> if (addr > rom->addr) {
> fprintf(stderr, "rom: requested regions overlap "
> "(rom %s. free=0x" TARGET_FMT_plx
> @@ -752,7 +758,7 @@ void do_info_roms(Monitor *mon)
> Rom *rom;
>
> QTAILQ_FOREACH(rom, &roms, next) {
> - if (rom->addr) {
> + if (!rom->fw_file) {
> monitor_printf(mon, "addr=" TARGET_FMT_plx
> " size=0x%06zx mem=%s name=\"%s\" \n",
> rom->addr, rom->romsize,
> --
> 1.6.5.3
>
>
>
>
--
Aurelien Jarno GPG: 1024D/F1BCDB73
address@hidden http://www.aurel32.net