mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-03 07:33:50 +00:00
New style paravirt framebuffer config in xen 3.0.4
This commit is contained in:
parent
98026c6b54
commit
17817e6a3d
@ -1,3 +1,11 @@
|
||||
Mon Dec 6 17:46:03 EST 2006 Daniel Berrange <berrange@redhat.com>
|
||||
|
||||
* src/xend_internal.c: Support parsing of new paravirt framebuffer
|
||||
graphics configuration from xen 3.0.4 tree.
|
||||
* test/sexpr2xmltest.c: Added test cases for new & old framebuffer
|
||||
config parsing in paravirt & fullyvirt.
|
||||
* test/sexpr2xmldata/sexpr2xml-pv-vfb-*: New test data files
|
||||
|
||||
Mon Dec 6 17:40:03 EST 2006 Daniel Berrange <berrange@redhat.com>
|
||||
|
||||
* test/xml2sexprdata/xml2sexpr-curmem.xml, test/xml2sexprdata/xml2sexpr-curmem.sexpr:
|
||||
|
@ -1736,6 +1736,19 @@ xend_parse_sexp_desc(virConnectPtr conn, struct sexpr *root, int xendConfigVersi
|
||||
tmp2);
|
||||
|
||||
virBufferAdd(&buf, " </interface>\n", 17);
|
||||
} else if (!hvm &&
|
||||
sexpr_lookup(node, "device/vfb")) {
|
||||
/* New style graphics config for PV guests only in 3.0.4 */
|
||||
tmp = sexpr_node(node, "device/vfb/type");
|
||||
|
||||
if (tmp && !strcmp(tmp, "sdl")) {
|
||||
virBufferAdd(&buf, " <graphics type='sdl'/>\n", 27);
|
||||
} else if (tmp && !strcmp(tmp, "vnc")) {
|
||||
int port = xenStoreDomainGetVNCPort(conn, domid);
|
||||
if (port == -1)
|
||||
port = 5900 + domid;
|
||||
virBufferVSprintf(&buf, " <graphics type='vnc' port='%d'/>\n", port);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1769,7 +1782,7 @@ xend_parse_sexp_desc(virConnectPtr conn, struct sexpr *root, int xendConfigVersi
|
||||
}
|
||||
}
|
||||
|
||||
/* Graphics device */
|
||||
/* Graphics device (HVM, or old (pre-3.0.4) style PV vnc config) */
|
||||
tmp = sexpr_fmt_node(root, "domain/image/%s/vnc", hvm ? "hvm" : "linux");
|
||||
if (tmp != NULL) {
|
||||
if (tmp[0] == '1') {
|
||||
@ -1780,6 +1793,7 @@ xend_parse_sexp_desc(virConnectPtr conn, struct sexpr *root, int xendConfigVersi
|
||||
}
|
||||
}
|
||||
|
||||
/* Graphics device (HVM, or old (pre-3.0.4) style PV sdl config) */
|
||||
tmp = sexpr_fmt_node(root, "domain/image/%s/sdl", hvm ? "hvm" : "linux");
|
||||
if (tmp != NULL) {
|
||||
if (tmp[0] == '1')
|
||||
|
2
tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.sexpr
Normal file
2
tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.sexpr
Normal file
@ -0,0 +1,2 @@
|
||||
(domain (domid 6)(name 'pvtest')(memory 420)(maxmem 420)(vcpus 2)(uuid '596a5d2171f48fb2e068e2386a5c413e')(on_poweroff 'destroy')(on_reboot 'destroy')(on_crash 'destroy')(image (linux (kernel '/var/lib/xen/vmlinuz.2Dn2YT')(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')(args ' method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test/5.91/x86_64/os ')))(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode 'w')))(device (vfb (type vnc)(vncunused 1)(vnclisten 0.0.0.0)(vncpasswd 123456)))))
|
||||
|
23
tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml
Normal file
23
tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<domain type='xen' id='6'>
|
||||
<name>pvtest</name>
|
||||
<uuid>596a5d2171f48fb2e068e2386a5c413e</uuid>
|
||||
<os>
|
||||
<type>linux</type>
|
||||
<kernel>/var/lib/xen/vmlinuz.2Dn2YT</kernel>
|
||||
<initrd>/var/lib/xen/initrd.img.0u-Vhq</initrd>
|
||||
<cmdline> method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test/5.91/x86_64/os </cmdline>
|
||||
</os>
|
||||
<memory>430080</memory>
|
||||
<vcpu>2</vcpu>
|
||||
<on_poweroff>destroy</on_poweroff>
|
||||
<on_reboot>destroy</on_reboot>
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='file'/>
|
||||
<source file='/root/some.img'/>
|
||||
<target dev='xvda'/>
|
||||
</disk>
|
||||
<graphics type='vnc' port='5906'/>
|
||||
</devices>
|
||||
</domain>
|
2
tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.sexpr
Normal file
2
tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.sexpr
Normal file
@ -0,0 +1,2 @@
|
||||
(domain (domid 6)(name 'pvtest')(memory 420)(maxmem 420)(vcpus 2)(uuid '596a5d2171f48fb2e068e2386a5c413e')(on_poweroff 'destroy')(on_reboot 'destroy')(on_crash 'destroy')(image (linux (kernel '/var/lib/xen/vmlinuz.2Dn2YT')(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')(args ' method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test/5.91/x86_64/os ')(vnc 1)(vncunused 1)(vnclisten 0.0.0.0)(vncpasswd 123456)))(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode 'w'))))
|
||||
|
23
tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml
Normal file
23
tests/sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<domain type='xen' id='6'>
|
||||
<name>pvtest</name>
|
||||
<uuid>596a5d2171f48fb2e068e2386a5c413e</uuid>
|
||||
<os>
|
||||
<type>linux</type>
|
||||
<kernel>/var/lib/xen/vmlinuz.2Dn2YT</kernel>
|
||||
<initrd>/var/lib/xen/initrd.img.0u-Vhq</initrd>
|
||||
<cmdline> method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test/5.91/x86_64/os </cmdline>
|
||||
</os>
|
||||
<memory>430080</memory>
|
||||
<vcpu>2</vcpu>
|
||||
<on_poweroff>destroy</on_poweroff>
|
||||
<on_reboot>destroy</on_reboot>
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='file'/>
|
||||
<source file='/root/some.img'/>
|
||||
<target dev='xvda'/>
|
||||
</disk>
|
||||
<graphics type='vnc' port='5906'/>
|
||||
</devices>
|
||||
</domain>
|
@ -60,6 +60,20 @@ static int testComparePVversion2(void *data ATTRIBUTE_UNUSED) {
|
||||
2);
|
||||
}
|
||||
|
||||
static int testComparePVOrigVFB(void *data ATTRIBUTE_UNUSED) {
|
||||
return testCompareFiles("sexpr2xmldata/sexpr2xml-pv-vfb-orig.xml",
|
||||
"sexpr2xmldata/sexpr2xml-pv-vfb-orig.sexpr",
|
||||
2);
|
||||
}
|
||||
|
||||
|
||||
static int testComparePVNewVFB(void *data ATTRIBUTE_UNUSED) {
|
||||
return testCompareFiles("sexpr2xmldata/sexpr2xml-pv-vfb-new.xml",
|
||||
"sexpr2xmldata/sexpr2xml-pv-vfb-new.sexpr",
|
||||
3);
|
||||
}
|
||||
|
||||
|
||||
static int testCompareFVversion2(void *data ATTRIBUTE_UNUSED) {
|
||||
return testCompareFiles("sexpr2xmldata/sexpr2xml-fv-v2.xml",
|
||||
"sexpr2xmldata/sexpr2xml-fv-v2.sexpr",
|
||||
@ -133,8 +147,15 @@ main(int argc, char **argv)
|
||||
if (virtTestRun("SEXPR-2-XML PV config (version 2)",
|
||||
1, testComparePVversion2, NULL) != 0)
|
||||
ret = -1;
|
||||
if (virtTestRun("SEXPR-2-XML PV config (Orig VFB)",
|
||||
1, testComparePVOrigVFB, NULL) != 0)
|
||||
ret = -1;
|
||||
|
||||
if (virtTestRun("SEXPR-2-XML FV config (version 2)",
|
||||
if (virtTestRun("SEXPR-2-XML PV config (New VFB)",
|
||||
1, testComparePVNewVFB, NULL) != 0)
|
||||
ret = -1;
|
||||
|
||||
if (virtTestRun("SEXPR-2-XML FV config (version 2)",
|
||||
1, testCompareFVversion2, NULL) != 0)
|
||||
ret = -1;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user