mirror of https://gitee.com/openkylin/libvirt.git
virsh: support multifunction in attach-disk
PCI <address...> can be specified by attach-disk but multifunction cannot be specified. Add --multifunction support.
This commit is contained in:
parent
972f7e6e49
commit
65aefae1a8
|
@ -12667,6 +12667,8 @@ static const vshCmdOptDef opts_attach_disk[] = {
|
|||
{"serial", VSH_OT_STRING, 0, N_("serial of disk device")},
|
||||
{"shareable", VSH_OT_BOOL, 0, N_("shareable between domains")},
|
||||
{"address", VSH_OT_STRING, 0, N_("address of disk device")},
|
||||
{"multifunction", VSH_OT_BOOL, 0,
|
||||
N_("use multifunction pci under specified address")},
|
||||
{NULL, 0, 0, NULL}
|
||||
};
|
||||
|
||||
|
@ -12922,9 +12924,12 @@ cmdAttachDisk(vshControl *ctl, const vshCmd *cmd)
|
|||
if (diskAddr.type == DISK_ADDR_TYPE_PCI) {
|
||||
virBufferAsprintf(&buf,
|
||||
" <address type='pci' domain='0x%04x'"
|
||||
" bus ='0x%02x' slot='0x%02x' function='0x%0x' />\n",
|
||||
" bus ='0x%02x' slot='0x%02x' function='0x%0x'",
|
||||
diskAddr.addr.pci.domain, diskAddr.addr.pci.bus,
|
||||
diskAddr.addr.pci.slot, diskAddr.addr.pci.function);
|
||||
if (vshCommandOptBool(cmd, "multifunction"))
|
||||
virBufferAddLit(&buf, " multifunction='on'");
|
||||
virBufferAddLit(&buf, "/>\n");
|
||||
} else {
|
||||
vshError(ctl, "%s", _("expecting a pci:0000.00.00.00 address."));
|
||||
goto cleanup;
|
||||
|
|
|
@ -1276,6 +1276,7 @@ the device does not use managed mode.
|
|||
[I<--driver driver>] [I<--subdriver subdriver>] [I<--cache cache>]
|
||||
[I<--type type>] [I<--mode mode>] [I<--persistent>] [I<--sourcetype soucetype>]
|
||||
[I<--serial serial>] [I<--shareable>] [I<--address address>]
|
||||
[I<--multifunction>]
|
||||
|
||||
Attach a new disk device to the domain.
|
||||
I<source> and I<target> are paths for the files and devices.
|
||||
|
@ -1293,6 +1294,8 @@ I<serial> is the serial of disk device. I<shareable> indicates the disk device
|
|||
is shareable between domains.
|
||||
I<address> is the address of disk device in the form of pci:domain.bus.slot.function,
|
||||
scsi:controller.bus.unit or ide:controller.bus.unit.
|
||||
I<multifunction> indicates specified pci address is a multifunction pci device
|
||||
address.
|
||||
|
||||
=item B<attach-interface> I<domain-id> I<type> I<source>
|
||||
[I<--target target>] [I<--mac mac>] [I<--script script>] [I<--model model>]
|
||||
|
|
Loading…
Reference in New Issue