cli: Add common device options for --memdev and chardevices

They both can handle explicit address config and alias config, so
wire it up
This commit is contained in:
Cole Robinson
2019-05-14 12:25:00 -04:00
parent 0e8e3c0bbf
commit 13dbc715be
4 changed files with 9 additions and 2 deletions

View File

@@ -273,6 +273,7 @@
</serial>
<serial type="nmdm">
<source master="/dev/foo1" slave="/dev/foo2"/>
<alias name="testalias7"/>
</serial>
<parallel type="udp">
<source mode="bind" host="127.0.0.1" service="1234"/>

View File

@@ -49,6 +49,7 @@
</target>
</memory>
<memory model="nvdimm">
<alias name="mymemdev3"/>
<source>
<path>/path/to/nvdimm</path>
</source>
@@ -112,6 +113,7 @@
</target>
</memory>
<memory model="nvdimm">
<alias name="mymemdev3"/>
<source>
<path>/path/to/nvdimm</path>
</source>

View File

@@ -534,7 +534,7 @@ c.add_compare("""
--input tablet
--serial tcp,host=:2222,mode=bind,protocol=telnet,log_file=/tmp/foo.log,log_append=yes,,target.model.name=pci-serial
--serial nmdm,source.master=/dev/foo1,source.slave=/dev/foo2
--serial nmdm,source.master=/dev/foo1,source.slave=/dev/foo2,alias.name=testalias7
--parallel udp,host=0.0.0.0:1234,bind_host=127.0.0.1:1234
--parallel unix,path=/tmp/foo-socket,source.seclabel0.model=none,source.seclabel1.model=dac,source.seclabel1.relabel=yes,source.seclabel1.label=foobar,source.seclabel.relabel=no
--channel pty,target_type=guestfwd,target_address=127.0.0.1:10000
@@ -628,7 +628,7 @@ c.add_valid("--security label=foobar.label,a1,z2,b3") # --security static with
c.add_invalid("--clock foo_tickpolicy=merge") # Unknown timer
c.add_invalid("--security foobar") # Busted --security
c.add_compare("--cpuset auto --vcpus 2", "cpuset-auto") # --cpuset=auto actually works
c.add_compare("--memory hotplugmemorymax=2048,hotplugmemoryslots=2 --cpu cell0.cpus=0,cell0.memory=1048576 --memdev dimm,access=private,target_size=512,target_node=0,source_pagesize=4,source_nodemask=1-2 --memdev nvdimm,source_path=/path/to/nvdimm,target_size=512,target_node=0,target_label_size=128", "memory-hotplug")
c.add_compare("--memory hotplugmemorymax=2048,hotplugmemoryslots=2 --cpu cell0.cpus=0,cell0.memory=1048576 --memdev dimm,access=private,target_size=512,target_node=0,source_pagesize=4,source_nodemask=1-2 --memdev nvdimm,source_path=/path/to/nvdimm,target_size=512,target_node=0,target_label_size=128,alias.name=mymemdev3", "memory-hotplug")
c.add_compare("--memory currentMemory=100,memory=200,maxmemory=300,maxMemory=400,maxMemory.slots=1", "memory-option-backcompat")
c.add_compare("--connect " + utils.URIs.kvm_q35 + " --cpu qemu64,secure=off", "cpu-disable-sec") # disable security features that are added by default
c.add_compare("--connect " + utils.URIs.kvm_rhel, "cpu-rhel7-default") # default CPU for old QEMU where we cannot use host-model

View File

@@ -3292,6 +3292,8 @@ class ParserMemdev(VirtCLIParser):
@classmethod
def _init_class(cls, **kwargs):
VirtCLIParser._init_class(**kwargs)
_add_common_device_args(cls)
cls.add_arg("model", "model")
cls.add_arg("access", "access")
cls.add_arg("target.size", "target.size", cb=cls.set_target_size)
@@ -3434,6 +3436,8 @@ class _ParserChar(VirtCLIParser):
return
VirtCLIParser._init_class(**kwargs)
_add_common_device_args(cls)
cls.add_arg("char_type", "type")
# These are handled in _add_advertised_aliases