Commit 664cc623 authored by Markus Armbruster's avatar Markus Armbruster
Browse files

blockdev: Improve message for orphaned -drive



We warn when a -drive isn't supported by the machine type (commit
a66c9dc7):

    $ qemu-system-x86_64 -S -display none -drive if=mtd
    Warning: Orphaned drive without device: id=mtd0,file=,if=mtd,bus=0,unit=0

Improve this to point to the offending bit of configuration:

    qemu-system-x86_64: -drive if=mtd: warning: machine type does not support if=mtd,bus=0,unit=0

Especially nice when it's hidden behind -readconfig foo.cfg:

    qemu-system-x86_64:foo.cfg:140: warning: machine type does not support if=mtd,bus=0,unit=0

Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
Message-Id: <1487153147-11530-7-git-send-email-armbru@redhat.com>
Reviewed-by: default avatarJohn Snow <jsnow@redhat.com>
parent 2a7ae4ee
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -231,6 +231,7 @@ bool drive_check_orphaned(void)
{
    BlockBackend *blk;
    DriveInfo *dinfo;
    Location loc;
    bool rs = false;

    for (blk = blk_next(NULL); blk; blk = blk_next(blk)) {
@@ -239,10 +240,12 @@ bool drive_check_orphaned(void)
        /* Unless this is a default drive, this may be an oversight. */
        if (!blk_get_attached_dev(blk) && !dinfo->is_default &&
            dinfo->type != IF_NONE) {
            fprintf(stderr, "Warning: Orphaned drive without device: "
                    "id=%s,file=%s,if=%s,bus=%d,unit=%d\n",
                    blk_name(blk), blk_bs(blk) ? blk_bs(blk)->filename : "",
            loc_push_none(&loc);
            qemu_opts_loc_restore(dinfo->opts);
            error_report("warning: machine type does not support"
                         " if=%s,bus=%d,unit=%d",
                         if_name[dinfo->type], dinfo->bus, dinfo->unit);
            loc_pop(&loc);
            rs = true;
        }
    }