diff options
author | Thomas Huth <thuth@redhat.com> | 2021-04-16 14:52:56 +0200 |
---|---|---|
committer | Thomas Huth <thuth@redhat.com> | 2021-07-19 10:08:45 +0200 |
commit | 9405d87be25db6dff4d7b5ab48a81bbf6d083e47 (patch) | |
tree | c94429d30a760cfa44e04aad3c263e4a6f79bbbc /include/hw/ide | |
parent | 283f0a05e24a5e5fab78305f783f06215390d620 (diff) | |
download | qemu-9405d87be25db6dff4d7b5ab48a81bbf6d083e47.zip qemu-9405d87be25db6dff4d7b5ab48a81bbf6d083e47.tar.gz qemu-9405d87be25db6dff4d7b5ab48a81bbf6d083e47.tar.bz2 |
hw/ide: Fix crash when plugging a piix3-ide device into the x-remote machine
QEMU currently crashes when the user tries to do something like:
qemu-system-x86_64 -M x-remote -device piix3-ide
This happens because the "isabus" variable is not initialized with
the x-remote machine yet. Add a proper check for this condition
and propagate the error to the caller, so we can fail there gracefully.
Message-Id: <20210416125256.2039734-1-thuth@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'include/hw/ide')
-rw-r--r-- | include/hw/ide/internal.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/hw/ide/internal.h b/include/hw/ide/internal.h index 2d09162..7917221 100644 --- a/include/hw/ide/internal.h +++ b/include/hw/ide/internal.h @@ -624,7 +624,7 @@ int ide_init_drive(IDEState *s, BlockBackend *blk, IDEDriveKind kind, int chs_trans, Error **errp); void ide_init2(IDEBus *bus, qemu_irq irq); void ide_exit(IDEState *s); -void ide_init_ioport(IDEBus *bus, ISADevice *isa, int iobase, int iobase2); +int ide_init_ioport(IDEBus *bus, ISADevice *isa, int iobase, int iobase2); void ide_register_restart_cb(IDEBus *bus); void ide_exec_cmd(IDEBus *bus, uint32_t val); |