mirror of https://gitee.com/openkylin/libvirt.git
domain_conf: always set primary video device as primary
We always place primary video device at first place, to make it easier to create a qemu command or format an xml, but we should also set the primary boolean for primary video device to 'true'. Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
parent
ea48397b01
commit
119cd06ef7
|
@ -11938,7 +11938,7 @@ virDomainVideoDefParseXML(xmlNodePtr node,
|
|||
|
||||
if ((primary = virXMLPropString(cur, "primary")) != NULL) {
|
||||
if (STREQ(primary, "yes"))
|
||||
def->primary = 1;
|
||||
def->primary = true;
|
||||
VIR_FREE(primary);
|
||||
}
|
||||
|
||||
|
@ -16074,6 +16074,10 @@ virDomainDefParseXML(xmlDocPtr xml,
|
|||
goto error;
|
||||
}
|
||||
}
|
||||
/* if not specified by user mark the first video as primary */
|
||||
if (n && !primaryVideo)
|
||||
def->videos[0]->primary = true;
|
||||
|
||||
VIR_FREE(nodes);
|
||||
|
||||
/* For backwards compatibility, if no <video> tag is set but there
|
||||
|
|
|
@ -3280,13 +3280,12 @@ qemuBuildSoundCodecStr(virDomainSoundDefPtr sound,
|
|||
static char *
|
||||
qemuBuildDeviceVideoStr(virDomainDefPtr def,
|
||||
virDomainVideoDefPtr video,
|
||||
virQEMUCapsPtr qemuCaps,
|
||||
bool primary)
|
||||
virQEMUCapsPtr qemuCaps)
|
||||
{
|
||||
virBuffer buf = VIR_BUFFER_INITIALIZER;
|
||||
const char *model;
|
||||
|
||||
if (primary) {
|
||||
if (video->primary) {
|
||||
model = qemuDeviceVideoTypeToString(video->type);
|
||||
if (!model || STREQ(model, "")) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||
|
@ -3347,8 +3346,10 @@ qemuBuildDeviceVideoStr(virDomainDefPtr def,
|
|||
virBufferAsprintf(&buf, ",vram_size=%u", video->vram * 1024);
|
||||
}
|
||||
|
||||
if ((primary && virQEMUCapsGet(qemuCaps, QEMU_CAPS_QXL_VGA_VGAMEM)) ||
|
||||
(!primary && virQEMUCapsGet(qemuCaps, QEMU_CAPS_QXL_VGAMEM))) {
|
||||
if ((video->primary &&
|
||||
virQEMUCapsGet(qemuCaps, QEMU_CAPS_QXL_VGA_VGAMEM)) ||
|
||||
(!video->primary &&
|
||||
virQEMUCapsGet(qemuCaps, QEMU_CAPS_QXL_VGAMEM))) {
|
||||
/* QEMU accepts mebibytes for vgamem_mb. */
|
||||
virBufferAsprintf(&buf, ",vgamem_mb=%u", video->vgamem / 1024);
|
||||
}
|
||||
|
@ -8225,7 +8226,8 @@ qemuBuildCommandLine(virConnectPtr conn,
|
|||
for (i = 0; i < def->nvideos; i++) {
|
||||
char *str;
|
||||
virCommandAddArg(cmd, "-device");
|
||||
if (!(str = qemuBuildDeviceVideoStr(def, def->videos[i], qemuCaps, !i)))
|
||||
if (!(str = qemuBuildDeviceVideoStr(def, def->videos[i],
|
||||
qemuCaps)))
|
||||
goto error;
|
||||
|
||||
virCommandAddArg(cmd, str);
|
||||
|
@ -8337,7 +8339,8 @@ qemuBuildCommandLine(virConnectPtr conn,
|
|||
|
||||
virCommandAddArg(cmd, "-device");
|
||||
|
||||
if (!(str = qemuBuildDeviceVideoStr(def, def->videos[i], qemuCaps, false)))
|
||||
if (!(str = qemuBuildDeviceVideoStr(def, def->videos[i],
|
||||
qemuCaps)))
|
||||
goto error;
|
||||
|
||||
virCommandAddArg(cmd, str);
|
||||
|
|
|
@ -91,7 +91,7 @@
|
|||
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
|
||||
</sound>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -88,7 +88,7 @@
|
|||
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
|
||||
</sound>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
<listen type='network' network='Bobsnetwork'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<listen type='network' network='Bobsnetwork'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
<input type='keyboard' bus='ps2'/>
|
||||
<graphics type='sdl' display=':0.1' xauth='/root/.Xauthority' fullscreen='yes'/>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
<input type='keyboard' bus='ps2'/>
|
||||
<graphics type='sdl' display=':0.1' xauth='/root/.Xauthority'/>
|
||||
<video>
|
||||
<model type='vga' vram='16384' heads='1'/>
|
||||
<model type='vga' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
<streaming mode='filter'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<video>
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
<channel name='inputs' mode='insecure'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<video>
|
||||
|
|
|
@ -82,7 +82,7 @@
|
|||
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
|
||||
</sound>
|
||||
<video>
|
||||
<model type='vga' vram='16384' heads='1'/>
|
||||
<model type='vga' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
<filetransfer enable='no'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<video>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<listen type='address' address='127.0.0.1'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<listen type='address' address='127.0.0.1'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
<listen type='address' address='127.0.0.1'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<listen type='address' address='2001:1:2:3:4:5:1234:1234'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -124,7 +124,7 @@
|
|||
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
|
||||
</sound>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -68,7 +68,7 @@
|
|||
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
|
||||
</sound>
|
||||
<video>
|
||||
<model type='vga' vram='16384' heads='1'/>
|
||||
<model type='vga' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
|
||||
</sound>
|
||||
<video>
|
||||
<model type='vga' vram='16384' heads='1'/>
|
||||
<model type='vga' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -241,7 +241,7 @@
|
|||
<listen type='address' address='127.0.0.1'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='16384' heads='1'/>
|
||||
<model type='cirrus' vram='16384' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -83,7 +83,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -80,7 +80,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -80,7 +80,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='32768' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='none'/>
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
<listen type='address' address='0.0.0.0'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='cirrus' vram='8192' heads='1'/>
|
||||
<model type='cirrus' vram='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
<listen type='address' address='127.0.0.1'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='qxl' ram='65536' vram='65536' vgamem='8192' heads='1'/>
|
||||
<model type='qxl' ram='65536' vram='65536' vgamem='8192' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='virtio' heads='1'/>
|
||||
<model type='virtio' heads='1' primary='yes'/>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
</video>
|
||||
<memballoon model='virtio'>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<gl enable='yes'/>
|
||||
</graphics>
|
||||
<video>
|
||||
<model type='virtio' heads='1'>
|
||||
<model type='virtio' heads='1' primary='yes'>
|
||||
<acceleration accel3d='yes'/>
|
||||
</model>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
<input type='mouse' bus='ps2'/>
|
||||
<input type='keyboard' bus='ps2'/>
|
||||
<video>
|
||||
<model type='virtio' heads='1'>
|
||||
<model type='virtio' heads='1' primary='yes'>
|
||||
<acceleration accel3d='yes'/>
|
||||
</model>
|
||||
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
|
||||
|
|
Loading…
Reference in New Issue