• Gerd Hoffmann's avatar
    qdev: add return value to init() callbacks. · 81a322d4
    Gerd Hoffmann authored
    Sorry folks, but it has to be.  One more of these invasive qdev patches.
    
    We have a serious design bug in the qdev interface:  device init
    callbacks can't signal failure because the init() callback has no
    return value.  This patch fixes it.
    
    We have already one case in-tree where this is needed:
    Try -device virtio-blk-pci (without drive= specified) and watch qemu
    segfault.  This patch fixes it.
    
    With usb+scsi being converted to qdev we'll get more devices where the
    init callback can fail for various reasons.
    Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
    Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
    81a322d4
escc.c 26.5 KB