提交 7f8fc971 编写于 作者: K Kevin Wolf

block: Remove deprecated -drive option addr

This reinstates commit eae3bd1e,
which was temporarily reverted for the 3.0 release so that libvirt gets
some extra time to update their command lines.

The -drive option addr was deprecated in QEMU 2.10. It's time to remove
it.
Signed-off-by: NKevin Wolf <kwolf@redhat.com>
Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
Reviewed-by: NJeff Cody <jcody@redhat.com>
上级 b24ec3c4
...@@ -730,10 +730,6 @@ QemuOptsList qemu_legacy_drive_opts = { ...@@ -730,10 +730,6 @@ QemuOptsList qemu_legacy_drive_opts = {
.name = "if", .name = "if",
.type = QEMU_OPT_STRING, .type = QEMU_OPT_STRING,
.help = "interface (ide, scsi, sd, mtd, floppy, pflash, virtio)", .help = "interface (ide, scsi, sd, mtd, floppy, pflash, virtio)",
},{
.name = "addr",
.type = QEMU_OPT_STRING,
.help = "pci address (virtio only)",
},{ },{
.name = "serial", .name = "serial",
.type = QEMU_OPT_STRING, .type = QEMU_OPT_STRING,
...@@ -777,7 +773,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type) ...@@ -777,7 +773,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
DriveMediaType media = MEDIA_DISK; DriveMediaType media = MEDIA_DISK;
BlockInterfaceType type; BlockInterfaceType type;
int max_devs, bus_id, unit_id, index; int max_devs, bus_id, unit_id, index;
const char *devaddr;
const char *werror, *rerror; const char *werror, *rerror;
bool read_only = false; bool read_only = false;
bool copy_on_read; bool copy_on_read;
...@@ -786,7 +781,7 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type) ...@@ -786,7 +781,7 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
Error *local_err = NULL; Error *local_err = NULL;
int i; int i;
const char *deprecated[] = { const char *deprecated[] = {
"serial", "addr" "serial"
}; };
/* Change legacy command line options into QMP ones */ /* Change legacy command line options into QMP ones */
...@@ -976,12 +971,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type) ...@@ -976,12 +971,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
} }
/* Add virtio block device */ /* Add virtio block device */
devaddr = qemu_opt_get(legacy_opts, "addr");
if (devaddr && type != IF_VIRTIO) {
error_report("addr is not supported by this bus type");
goto fail;
}
if (type == IF_VIRTIO) { if (type == IF_VIRTIO) {
QemuOpts *devopts; QemuOpts *devopts;
devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0, devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
...@@ -993,9 +982,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type) ...@@ -993,9 +982,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
} }
qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"), qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
&error_abort); &error_abort);
if (devaddr) {
qemu_opt_set(devopts, "addr", devaddr, &error_abort);
}
} }
filename = qemu_opt_get(legacy_opts, "file"); filename = qemu_opt_get(legacy_opts, "file");
...@@ -1040,7 +1026,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type) ...@@ -1040,7 +1026,6 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type)
dinfo->type = type; dinfo->type = type;
dinfo->bus = bus_id; dinfo->bus = bus_id;
dinfo->unit = unit_id; dinfo->unit = unit_id;
dinfo->devaddr = devaddr;
dinfo->serial = g_strdup(serial); dinfo->serial = g_strdup(serial);
blk_set_legacy_dinfo(blk, dinfo); blk_set_legacy_dinfo(blk, dinfo);
......
...@@ -69,10 +69,6 @@ void hmp_drive_add(Monitor *mon, const QDict *qdict) ...@@ -69,10 +69,6 @@ void hmp_drive_add(Monitor *mon, const QDict *qdict)
if (!dinfo) { if (!dinfo) {
goto err; goto err;
} }
if (dinfo->devaddr) {
monitor_printf(mon, "Parameter addr not supported\n");
goto err;
}
switch (dinfo->type) { switch (dinfo->type) {
case IF_NONE: case IF_NONE:
......
...@@ -28,7 +28,6 @@ typedef enum { ...@@ -28,7 +28,6 @@ typedef enum {
} BlockInterfaceType; } BlockInterfaceType;
struct DriveInfo { struct DriveInfo {
const char *devaddr;
BlockInterfaceType type; BlockInterfaceType type;
int bus; int bus;
int unit; int unit;
......
...@@ -99,11 +99,6 @@ provided per NIC. ...@@ -99,11 +99,6 @@ provided per NIC.
The drive serial argument is replaced by the the serial argument The drive serial argument is replaced by the the serial argument
that can be specified with the ``-device'' parameter. that can be specified with the ``-device'' parameter.
@subsection -drive addr=... (since 2.10.0)
The drive addr argument is replaced by the the addr argument
that can be specified with the ``-device'' parameter.
@subsection -usbdevice (since 2.10.0) @subsection -usbdevice (since 2.10.0)
The ``-usbdevice DEV'' argument is now a synonym for setting The ``-usbdevice DEV'' argument is now a synonym for setting
......
...@@ -805,7 +805,7 @@ ETEXI ...@@ -805,7 +805,7 @@ ETEXI
DEF("drive", HAS_ARG, QEMU_OPTION_drive, DEF("drive", HAS_ARG, QEMU_OPTION_drive,
"-drive [file=file][,if=type][,bus=n][,unit=m][,media=d][,index=i]\n" "-drive [file=file][,if=type][,bus=n][,unit=m][,media=d][,index=i]\n"
" [,cache=writethrough|writeback|none|directsync|unsafe][,format=f]\n" " [,cache=writethrough|writeback|none|directsync|unsafe][,format=f]\n"
" [,snapshot=on|off][,serial=s][,addr=A][,rerror=ignore|stop|report]\n" " [,snapshot=on|off][,serial=s][,rerror=ignore|stop|report]\n"
" [,werror=ignore|stop|report|enospc][,id=name][,aio=threads|native]\n" " [,werror=ignore|stop|report|enospc][,id=name][,aio=threads|native]\n"
" [,readonly=on|off][,copy-on-read=on|off]\n" " [,readonly=on|off][,copy-on-read=on|off]\n"
" [,discard=ignore|unmap][,detect-zeroes=on|off|unmap]\n" " [,discard=ignore|unmap][,detect-zeroes=on|off|unmap]\n"
...@@ -883,9 +883,6 @@ an untrusted format header. ...@@ -883,9 +883,6 @@ an untrusted format header.
This option specifies the serial number to assign to the device. This This option specifies the serial number to assign to the device. This
parameter is deprecated, use the corresponding parameter of @code{-device} parameter is deprecated, use the corresponding parameter of @code{-device}
instead. instead.
@item addr=@var{addr}
Specify the controller's PCI address (if=virtio only). This parameter is
deprecated, use the corresponding parameter of @code{-device} instead.
@item werror=@var{action},rerror=@var{action} @item werror=@var{action},rerror=@var{action}
Specify which @var{action} to take on write and read errors. Valid actions are: Specify which @var{action} to take on write and read errors. Valid actions are:
"ignore" (ignore the error and try to continue), "stop" (pause QEMU), "ignore" (ignore the error and try to continue), "stop" (pause QEMU),
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册