Eduardo Otubo <ot...@redhat.com> writes: > When not available, isa-fdc falls into assert instead of proper error > exit. This patch fixes this behavior.
When what exactly isn't available? > > Signed-off-by: Eduardo Otubo <ot...@redhat.com> > --- > hw/block/fdc.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/hw/block/fdc.c b/hw/block/fdc.c > index 401129073b..0b6def4e1d 100644 > --- a/hw/block/fdc.c > +++ b/hw/block/fdc.c > @@ -2699,11 +2699,15 @@ static void isabus_fdc_realize(DeviceState *dev, > Error **errp) > fdctrl->dma_chann = isa->dma; > if (fdctrl->dma_chann != -1) { > fdctrl->dma = isa_get_dma(isa_bus_from_device(isadev), isa->dma); > - assert(fdctrl->dma); > + if (!fdctrl->dma) { > + error_setg(errp, "isa-fdc not supported"); > + goto error; > + } > } > > qdev_set_legacy_instance_id(dev, isa->iobase, 2); > fdctrl_realize_common(dev, fdctrl, &err); > +error: > if (err != NULL) { > error_propagate(errp, err); > return; The actual patch makes me suspect it's "when ISA DMA isn't available".