Re: [libvirt] libvirt vs XenAPI
2008/9/4 Daniel Veillard [EMAIL PROTECTED] On Tue, Sep 02, 2008 at 06:09:43PM +0200, atif bajwa wrote: Just quick question, what version of Xen/XenApi is packaged in RHEL 5.1/5.2. Can I remotely access it using XML-RPC API or not? RHEL-5.2 has xen-3.0.3, and that will stay the same for the lifetime of RHEL5. There is no XenAPI for this, as Dan Berrange told you already. And for remote access you have libvirt support. On CentOS-5.2 (same as RedHat, IFAIK), xen is 3.1.2. Don't believe rpm version, check xm info instead. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
Hi, Alain I guess Daniel says xend issue.(since it relates to XenAPI) As for hypervisor, You are correct in RHEL5.2 and CentOS5.2. Current RHEL/Xen is very complex compared to upstream Xen. Thanks Atsushi SAKAI Alain Barthe [EMAIL PROTECTED] wrote: 2008/9/4 Daniel Veillard [EMAIL PROTECTED] On Tue, Sep 02, 2008 at 06:09:43PM +0200, atif bajwa wrote: Just quick question, what version of Xen/XenApi is packaged in RHEL 5.1/5.2. Can I remotely access it using XML-RPC API or not? RHEL-5.2 has xen-3.0.3, and that will stay the same for the lifetime of RHEL5. There is no XenAPI for this, as Dan Berrange told you already. And for remote access you have libvirt support. On CentOS-5.2 (same as RedHat, IFAIK), xen is 3.1.2. Don't believe rpm version, check xm info instead. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
So the question is, Is there any particular reason that RHEL 5.2 did not upgrade Xen user space tools/libs. Novell SLES/SLED 10 SP2 and Oracle VM 2.1.x have upgraded the user space libs for remote management of Xen infrastructure. Regards, Atif On Mon, Sep 8, 2008 at 8:49 AM, Atsushi SAKAI [EMAIL PROTECTED] wrote: Hi, Alain I guess Daniel says xend issue.(since it relates to XenAPI) As for hypervisor, You are correct in RHEL5.2 and CentOS5.2. Current RHEL/Xen is very complex compared to upstream Xen. Thanks Atsushi SAKAI Alain Barthe [EMAIL PROTECTED] wrote: 2008/9/4 Daniel Veillard [EMAIL PROTECTED] On Tue, Sep 02, 2008 at 06:09:43PM +0200, atif bajwa wrote: Just quick question, what version of Xen/XenApi is packaged in RHEL 5.1/5.2. Can I remotely access it using XML-RPC API or not? RHEL-5.2 has xen-3.0.3, and that will stay the same for the lifetime of RHEL5. There is no XenAPI for this, as Dan Berrange told you already. And for remote access you have libvirt support. On CentOS-5.2 (same as RedHat, IFAIK), xen is 3.1.2. Don't believe rpm version, check xm info instead. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
atif bajwa wrote: So the question is, Is there any particular reason that RHEL 5.2 did not upgrade Xen user space tools/libs. Novell SLES/SLED 10 SP2 and Oracle VM 2.1.x have upgraded the user space libs for remote management of Xen infrastructure. Yes. We needed to keep backwards compatibility with the userspace tools shipped in RHEL 5.0, which was based on 3.0.3. For that reason, we can't take wholesale the upgraded userland; and in point of fact, we don't really need to, since libvirt provides us with the functionality that XenAPI would. Chris Lalancette -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [RFC][PATCH] virt-manager calls migration API
S.Sakamoto wrote: Hi, I just make the proto patch that calls migration API from virt-manager. Form unity point of view, This proto patch adds Migrate in as same layer as operations for the Domain. Fisrt, this patch adds Migrate to the right-click menu when selected a domain. You probably want to send this to et-mgmt-list, which is where virt-manager development happens, but I will comment on one thing below... (2)I think it that is necessary to improve usability that there is precheking beofre migrating. (ex. same cpu family/processor number?, enough free memory?, ...) I sent an e-mail last month with proposals for doing this within libvirt. I put up all of the information I have in the libvirt wiki here: http://wiki.libvirt.org/page/TodoPreMigrationChecks (if you have more ideas, please add them). In short, yes, we really want to do some pre-migration sanity checking, and I think that libvirt is probably the right place to do them. Someone needs to think about it further, though, and then sit down and implement it. Chris Lalancette -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] domain type kvm error
On Sun, Sep 07, 2008 at 11:56:21PM +0300, Rakotomandimby Mihamina wrote: Cole Robinson wrote: You can't just change the domain type, you also have to change the emulator tag. My guess is, this new 'kvm' command is still using the plain qemu emulator and not '/usr/bin/kvm' Given that, how will I choose if I want to launch a 32bit or a 64bit VM guest? When on a x86_64 host, KVM doesn't emulate a pure 32-bit VM. It just provides a regular x86_64 virtual machine, which happenss to be able to run i686 operating systems, by virtue of the x86_64/i686 instruction set compatability. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] PATCH: Fix NULL checks in openvz driver
On Fri, Sep 05, 2008 at 05:40:16PM +0200, Jim Meyering wrote: Daniel P. Berrange [EMAIL PROTECTED] wrote: Jim pointed out some places where the openvz driver could deference some NULs, so this patch fixes them ... Index: src/openvz_driver.c === RCS file: /data/cvs/libvirt/src/openvz_driver.c,v retrieving revision 1.46 diff -u -p -r1.46 openvz_driver.c --- src/openvz_driver.c 5 Sep 2008 15:00:14 - 1.46 +++ src/openvz_driver.c 5 Sep 2008 15:11:34 - @@ -276,7 +276,7 @@ static char *openvzDomainDumpXML(virDoma static int openvzDomainShutdown(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, NULL /* name */, NULL}; ... +prog[3] = vm-def-name; if (virRun(dom-conn, prog, NULL) 0) return -1; ... All looks correct. However, I'm a little nervous about hard-coding those '[3]'s. What if someone inserts a new --foo option somewhere before the NULL place-holder, or otherwise rearranges the options? Then we'll have to remember to update that 3 below to e.g., 4. Easy to miss that... I just realized there is a much simpler way todo this... Daniel Index: src/openvz_driver.c === RCS file: /data/cvs/libvirt/src/openvz_driver.c,v retrieving revision 1.46 diff -u -p -r1.46 openvz_driver.c --- src/openvz_driver.c 5 Sep 2008 15:00:14 - 1.46 +++ src/openvz_driver.c 8 Sep 2008 09:44:53 - @@ -276,7 +276,7 @@ static char *openvzDomainDumpXML(virDoma static int openvzDomainShutdown(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, vm ? vm-def-name : NULL, NULL}; if (!vm) { openvzError(dom-conn, VIR_ERR_INVALID_DOMAIN, @@ -303,7 +303,7 @@ static int openvzDomainReboot(virDomainP unsigned int flags ATTRIBUTE_UNUSED) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, restart, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, restart, vm ? vm-def-name : NULL, NULL}; if (!vm) { openvzError(dom-conn, VIR_ERR_INVALID_DOMAIN, @@ -581,7 +581,7 @@ openvzDomainCreate(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByName(driver-domains, dom-name); -const char *prog[] = {VZCTL, --quiet, start, vm-def-name, NULL }; +const char *prog[] = {VZCTL, --quiet, start, vm ? vm-def-name : NULL, NULL }; if (!vm) { openvzError(dom-conn, VIR_ERR_INVALID_DOMAIN, @@ -614,7 +614,7 @@ openvzDomainUndefine(virDomainPtr dom) virConnectPtr conn= dom-conn; struct openvz_driver *driver = (struct openvz_driver *) conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = { VZCTL, --quiet, destroy, vm-def-name, NULL }; +const char *prog[] = { VZCTL, --quiet, destroy, vm ? vm-def-name : NULL, NULL }; if (!vm) { openvzError(conn, VIR_ERR_INVALID_DOMAIN, _(no domain with matching uuid)); @@ -643,7 +643,7 @@ openvzDomainSetAutostart(virDomainPtr do virConnectPtr conn= dom-conn; struct openvz_driver *driver = (struct openvz_driver *) conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = { VZCTL, --quiet, set, vm-def-name, +const char *prog[] = { VZCTL, --quiet, set, vm ? vm-def-name : NULL, --onboot, autostart ? yes : no, --save, NULL }; @@ -704,16 +704,9 @@ static int openvzDomainSetVcpus(virDomai struct openvz_driver *driver = (struct openvz_driver *) conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); char str_vcpus[32]; -const char *prog[] = { VZCTL, --quiet, set, vm-def-name, +const char *prog[] = { VZCTL, --quiet, set, vm ? vm-def-name : NULL, --cpus, str_vcpus, --save, NULL }; -snprintf(str_vcpus, 31, %d, nvcpus); -str_vcpus[31] = '\0'; -if (nvcpus = 0) { -openvzError(conn, VIR_ERR_INTERNAL_ERROR, -_(VCPUs should be = 1)); -return -1; -} if (!vm) { openvzError(conn, VIR_ERR_INVALID_DOMAIN, @@ -721,6 +714,15 @@ static int
Re: [libvirt] [PATCH] Implement vol delete for disk pools
On Fri, Sep 05, 2008 at 11:17:27PM -0400, Cole Robinson wrote: static int virStorageBackendDiskDeleteVol(virConnectPtr conn, - virStoragePoolObjPtr pool ATTRIBUTE_UNUSED, - virStorageVolDefPtr vol ATTRIBUTE_UNUSED, + virStoragePoolObjPtr pool, + virStorageVolDefPtr vol, unsigned int flags ATTRIBUTE_UNUSED) { -/* delete a partition */ -virStorageReportError(conn, VIR_ERR_NO_SUPPORT, - _(Disk pools are not yet supported)); -return -1; +char *part_num = NULL; +int n; +char devpath[PATH_MAX]; +char *devname, *srcname; + +if ((n = readlink(vol-target.path, devpath, sizeof(devpath))) 0 +errno != EINVAL) { +virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR, + _(Couldn't read volume target path '%s'. %s), + vol-target.path, strerror(errno)); +return -1; +} else if (n = 0) { +strncpy(devpath, vol-target.path, PATH_MAX); +} else { +devpath[n] = '\0'; +} + +devname = basename(devpath); +srcname = basename(pool-def-source.devices[0].path); This seems to leak the two strings and not check for errors. That would need to be fixed before being commited IMHO +DEBUG(devname=%s, srcname=%s, devname, srcname); + +if (!STRPREFIX(devname, srcname)) { +virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR, + _(Volume path '%s' did not start with parent +pool source device name.), devname); +return -1; +} + +part_num = devname + strlen(srcname); + +if (!part_num) { +virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR, + _(cannot parse partition number from target +'%s'), devname); +return -1; +} + +/* eg parted /dev/sda rm 2 */ +const char *prog[] = { +PARTED, +pool-def-source.devices[0].path, +rm, +--script, +part_num, +NULL, +}; + +if (virRun(conn, prog, NULL) 0) +return -1; + +return 0; } Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] PATCH: Fix NULL checks in openvz driver
Daniel P. Berrange [EMAIL PROTECTED] wrote: On Fri, Sep 05, 2008 at 05:40:16PM +0200, Jim Meyering wrote: ... All looks correct. However, I'm a little nervous about hard-coding those '[3]'s. What if someone inserts a new --foo option somewhere before the NULL place-holder, or otherwise rearranges the options? Then we'll have to remember to update that 3 below to e.g., 4. Easy to miss that... I just realized there is a much simpler way todo this... ... -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, vm ? vm-def-name : NULL, NULL}; Ahh... much better ;-) ACK -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
On Mon, Sep 08, 2008 at 08:56:49AM +0100, atif bajwa wrote: So the question is, Is there any particular reason that RHEL 5.2 did not upgrade Xen user space tools/libs. Yes that's called API and ABI compatibility in a RHEL product lifetime! And by definition this will remain for all RHEL 5, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
[libvirt] [RFC][PATCH] virt-manager calls migration API
Hi, I just make the proto patch that calls migration API from virt-manager. Form unity point of view, This proto patch adds Migrate in as same layer as operations for the Domain. Fisrt, this patch adds Migrate to the right-click menu when selected a domain. Run Run PausePause Shutdown Shutdown ---- Open(O) Migrate Open(O) When Migrate selected, it goes on new window open which shows available(have been connecting) hosts. Of course, I have been knowing that there is DragDrop way. By the way, (1)It is necessary to migrate a domain that users modify an environmental setting. (ex. for XenD xend-config, ...) And (2)I think it that is necessary to improve usability that there is precheking beofre migrating. (ex. same cpu family/processor number?, enough free memory?, ...) Do you already have a idea that virt-manager servies above (1)(2) ? Finally, I understand that migrated domain's state switches Running and Shutoff alternately, because current virt-maneger manages domains by UUID. Is there a plan that this problem is solved? virtManager/domain.py | 27 ++ virtManager/engine.py | 82 virtManager/hostlist.py | 172 ++ virtManager/manager.py | 27 ++ vmm-hostlist.glade | 195 5 files changed, 488 insertions(+), 15 modifications(!) Thanks, Shigeki Sakamoto. -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] network domain name patch
On Sat, Sep 06, 2008 at 03:14:45PM -0400, JJ Reynolds wrote: Hi all, This is a followup to the excellent patch which allows static IP address assignment. The problem with that patch is that you can only set the host name and cannot set a FQDN because dnsmasq will, as a security measure, not allow it unless --domain is specified. This patch adds support for adding domain name=my.domain / to the network config file. With that stanza, one can then use FQDNs on the static host assignments, and this should be the domain reported for any clients that request it. If domain name .. ./ is not specified in the config file, then there is no change in behaviour. As a special case, you can also set the domain name to #, whereupon dnsmasq interprets that to use the domain of the host OS. Sounds fine to me, and the patch looks clean and simple, I'm fine with this, someone else with more networking insight can back this up too ? thanks, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
On Mon, Sep 08, 2008 at 08:56:49AM +0100, atif bajwa wrote: So the question is, Is there any particular reason that RHEL 5.2 did not upgrade Xen user space tools/libs. Novell SLES/SLED 10 SP2 and Oracle VM 2.1.x have upgraded the user space libs for remote management of Xen infrastructure. Novell does not provide the same user ABI/API stability guarentees that we do in RHEL. The change from Xen 3.0.x series to Xen 3.1.0 changes a number of user facing APIs / changes semantics of existing commands. This is not acceptable to drop into a minor update of RHEL because it can cause functional regressions for people deploying tools built on Xen. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
Thanks, With Xen 3.3, the Xen Client Initiative (XCI) is out, a Xen.org community effort to accelerate and coordinate the development of fast, free, compatible embedded Xen hypervisors for laptops, PCs and PDAs. Don't you think the XenApi or similar technologies be right choice for remote management of these. Regards, Atif On Mon, Sep 8, 2008 at 9:06 AM, Daniel Veillard [EMAIL PROTECTED] wrote: On Mon, Sep 08, 2008 at 08:56:49AM +0100, atif bajwa wrote: So the question is, Is there any particular reason that RHEL 5.2 did not upgrade Xen user space tools/libs. Yes that's called API and ABI compatibility in a RHEL product lifetime! And by definition this will remain for all RHEL 5, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] libvirt vs XenAPI
On Mon, Sep 08, 2008 at 01:49:53PM +0100, atif bajwa wrote: Thanks, With Xen 3.3, the Xen Client Initiative (XCI) is out, a Xen.org community effort to accelerate and coordinate the development of fast, free, compatible embedded Xen hypervisors for laptops, PCs and PDAs. Don't you think the XenApi or similar technologies be right choice for remote management of these. As developers of libvirt, we believe that users, admins developers are best served by an API which is independant of the underlying virtualization technology. The choice of which hypervisor to use is a deployment question, and as such applications should not be looked into one particular choice. XenAPI as an application development API will irrevocably lock you into the Xen hypervisor. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] PATCH: Fix NULL checks in openvz driver
On Fri, Sep 05, 2008 at 05:40:16PM +0200, Jim Meyering wrote: Daniel P. Berrange [EMAIL PROTECTED] wrote: Jim pointed out some places where the openvz driver could deference some NULs, so this patch fixes them ... Index: src/openvz_driver.c === RCS file: /data/cvs/libvirt/src/openvz_driver.c,v retrieving revision 1.46 diff -u -p -r1.46 openvz_driver.c --- src/openvz_driver.c 5 Sep 2008 15:00:14 - 1.46 +++ src/openvz_driver.c 5 Sep 2008 15:11:34 - @@ -276,7 +276,7 @@ static char *openvzDomainDumpXML(virDoma static int openvzDomainShutdown(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, NULL /* name */, NULL}; ... +prog[3] = vm-def-name; if (virRun(dom-conn, prog, NULL) 0) return -1; ... All looks correct. However, I'm a little nervous about hard-coding those '[3]'s. What if someone inserts a new --foo option somewhere before the NULL place-holder, or otherwise rearranges the options? Then we'll have to remember to update that 3 below to e.g., 4. Easy to miss that... I just realized there is a much simpler way todo this... Daniel Index: src/openvz_driver.c === RCS file: /data/cvs/libvirt/src/openvz_driver.c,v retrieving revision 1.46 diff -u -p -r1.46 openvz_driver.c --- src/openvz_driver.c 5 Sep 2008 15:00:14 - 1.46 +++ src/openvz_driver.c 8 Sep 2008 09:44:53 - @@ -276,7 +276,7 @@ static char *openvzDomainDumpXML(virDoma static int openvzDomainShutdown(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, vm ? vm-def-name : NULL, NULL}; if (!vm) { openvzError(dom-conn, VIR_ERR_INVALID_DOMAIN, @@ -303,7 +303,7 @@ static int openvzDomainReboot(virDomainP unsigned int flags ATTRIBUTE_UNUSED) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, restart, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, restart, vm ? vm-def-name : NULL, NULL}; if (!vm) { openvzError(dom-conn, VIR_ERR_INVALID_DOMAIN, @@ -581,7 +581,7 @@ openvzDomainCreate(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByName(driver-domains, dom-name); -const char *prog[] = {VZCTL, --quiet, start, vm-def-name, NULL }; +const char *prog[] = {VZCTL, --quiet, start, vm ? vm-def-name : NULL, NULL }; if (!vm) { openvzError(dom-conn, VIR_ERR_INVALID_DOMAIN, @@ -614,7 +614,7 @@ openvzDomainUndefine(virDomainPtr dom) virConnectPtr conn= dom-conn; struct openvz_driver *driver = (struct openvz_driver *) conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = { VZCTL, --quiet, destroy, vm-def-name, NULL }; +const char *prog[] = { VZCTL, --quiet, destroy, vm ? vm-def-name : NULL, NULL }; if (!vm) { openvzError(conn, VIR_ERR_INVALID_DOMAIN, _(no domain with matching uuid)); @@ -643,7 +643,7 @@ openvzDomainSetAutostart(virDomainPtr do virConnectPtr conn= dom-conn; struct openvz_driver *driver = (struct openvz_driver *) conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = { VZCTL, --quiet, set, vm-def-name, +const char *prog[] = { VZCTL, --quiet, set, vm ? vm-def-name : NULL, --onboot, autostart ? yes : no, --save, NULL }; @@ -704,16 +704,9 @@ static int openvzDomainSetVcpus(virDomai struct openvz_driver *driver = (struct openvz_driver *) conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); char str_vcpus[32]; -const char *prog[] = { VZCTL, --quiet, set, vm-def-name, +const char *prog[] = { VZCTL, --quiet, set, vm ? vm-def-name : NULL, --cpus, str_vcpus, --save, NULL }; -snprintf(str_vcpus, 31, %d, nvcpus); -str_vcpus[31] = '\0'; -if (nvcpus = 0) { -openvzError(conn, VIR_ERR_INTERNAL_ERROR, -_(VCPUs should be = 1)); -return -1; -} if (!vm) { openvzError(conn, VIR_ERR_INVALID_DOMAIN, @@ -721,6 +714,15 @@ static int openvzDomainSetVcpus(virDomai return -1; }
Re: [libvirt] PATCH: Fix NULL checks in openvz driver
On Mon, Sep 08, 2008 at 04:06:26PM +0400, Evgeniy Sokolov wrote: On Fri, Sep 05, 2008 at 05:40:16PM +0200, Jim Meyering wrote: Daniel P. Berrange [EMAIL PROTECTED] wrote: Jim pointed out some places where the openvz driver could deference some NULs, so this patch fixes them ... Index: src/openvz_driver.c === RCS file: /data/cvs/libvirt/src/openvz_driver.c,v retrieving revision 1.46 diff -u -p -r1.46 openvz_driver.c --- src/openvz_driver.c5 Sep 2008 15:00:14 - 1.46 +++ src/openvz_driver.c5 Sep 2008 15:11:34 - @@ -276,7 +276,7 @@ static char *openvzDomainDumpXML(virDoma static int openvzDomainShutdown(virDomainPtr dom) { struct openvz_driver *driver = (struct openvz_driver *)dom-conn-privateData; virDomainObjPtr vm = virDomainFindByUUID(driver-domains, dom-uuid); -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, NULL /* name */, NULL}; ... +prog[3] = vm-def-name; if (virRun(dom-conn, prog, NULL) 0) return -1; ... All looks correct. However, I'm a little nervous about hard-coding those '[3]'s. What if someone inserts a new --foo option somewhere before the NULL place-holder, or otherwise rearranges the options? Then we'll have to remember to update that 3 below to e.g., 4. Easy to miss that... I just realized there is a much simpler way todo this... [snip] It looks very good. Thanks, this is committed now Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH] Determine kvm max vcpus via version number
On Fri, Sep 05, 2008 at 12:25:16PM -0400, Cole Robinson wrote: The attached patch is a slimmed down version of a patch I posted a while back. This expands qemu help message parsing to look for a kvm version number, which can be used to determine maximum supported vcpus. A kvmVersion field is added to the qemu_driver structure, and a check to determine the version is added to the libvirtd start up routine. If the kvm version isn't found (say if kvm isn't installed), kvmVersion is set to 0. This is against Guido Gunther's patch maxVCPU runtime detection: his method takes precendence in the code if it's available. Looks fine to me, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] Mac Port of Libvirt
On Fri, Sep 05, 2008 at 11:43:41AM -0700, Yushu Yao wrote: Thanks Daniel, Now support for local virtualization (QEmu for example) would be a more complex issue but probably not much more complex than existing linux hypervisor support. Why is this more complex? Could you please explain a bit more? Because that's code which would have to be designed/ported, instead of just recompiling completely generic code which has already been ported to Windows. By the way, with libvirt, can I control a hypervisor without the libvirtd running with root privilege (or even without libvirtd running at all?)? You should not assume this is possible. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] PATCH: Fix NULL checks in openvz driver
On Mon, Sep 08, 2008 at 11:51:28AM +0200, Jim Meyering wrote: Daniel P. Berrange [EMAIL PROTECTED] wrote: On Fri, Sep 05, 2008 at 05:40:16PM +0200, Jim Meyering wrote: ... All looks correct. However, I'm a little nervous about hard-coding those '[3]'s. What if someone inserts a new --foo option somewhere before the NULL place-holder, or otherwise rearranges the options? Then we'll have to remember to update that 3 below to e.g., 4. Easy to miss that... I just realized there is a much simpler way todo this... ... -const char *prog[] = {VZCTL, --quiet, stop, vm-def-name, NULL}; +const char *prog[] = {VZCTL, --quiet, stop, vm ? vm-def-name : NULL, NULL}; Ahh... much better ;-) ACK Okay, fine by me too ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH]Fix minor issues in logical storage backend
On Thu, Sep 04, 2008 at 02:21:34PM +0100, Daniel P. Berrange wrote: On Thu, Sep 04, 2008 at 03:13:45PM +0200, Daniel Veillard wrote: So there is an initialization of the field. It's unclear to me if the two should be OR'ed, or should be kept as-is, if we have the pool name do we need to provide the pool device then ? I get a bit confused now. The .flag field is a bit-mask, so yes it should be OR'd. Basically the flags are saying which XML elements are valid within the source tag, and in LVM case we need to allow both name and device tags, so they have to be OR'd Okay, I commited the OR'ed initialization of the field. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] LXC: making the private root filesystem more secure
On Thu, Sep 04, 2008 at 12:50:35PM -0700, Dan Smith wrote: DV I just checked the libcgroup heaer file available under Fedora 9 DV and I'm a bit afraid of the dependancy. They expose a lot of DV structure, some clearly incomplete, which means liking to it in its DV current state may turn into a problematic dependency. I've become increasingly concerned about the likelihood of converging on something stable that will work for libvirt in this area. I hate to ignore an abstraction layer that may help reduce the amount of knowledge of cgroups that has to be present in libvirt. However, I'm not sure that libcgroup is really going to provide such a layer, and thus would (as you put it) become nothing but a problematic dependency. Perhaps it makes the most sense to implement a bit of cgroup support directly into libvirt to satisfy our current needs while we wait to see if libcgroup matures? Yes I don't want to presume the ability of the libcgroup to become cleaner and more stable, we can probably go with a small internal API and when/if things become nicer, then reuse libcgroup, thanks for the insights, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] network domain name patch
[ Hum, I don't know why it seems my first mail didn't make it to the list, so reposting !] On Sun, Sep 07, 2008 at 06:37:16PM +0200, Daniel Veillard wrote: On Sat, Sep 06, 2008 at 03:14:45PM -0400, JJ Reynolds wrote: Hi all, This is a followup to the excellent patch which allows static IP address assignment. The problem with that patch is that you can only set the host name and cannot set a FQDN because dnsmasq will, as a security measure, not allow it unless --domain is specified. This patch adds support for adding domain name=my.domain / to the network config file. With that stanza, one can then use FQDNs on the static host assignments, and this should be the domain reported for any clients that request it. If domain name .. ./ is not specified in the config file, then there is no change in behaviour. As a special case, you can also set the domain name to #, whereupon dnsmasq interprets that to use the domain of the host OS. Sounds fine to me, and the patch looks clean and simple, I'm fine with this, someone else with more networking insight can back this up too ? thanks Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
[libvirt] ld: unknown option: --version-script
Hi All, A question when porting to Mac. It says: ld: unknown option: --version-script=./libvirt_sym.version collect2: ld returned 1 exit status make[2]: *** [libvirt.la] Error 1 Indeed --version-script doesn't exist in mac's ld. Can I change it to something else with them same functionality? How should I do it? Thanks. -Yushu -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] network domain name patch
On Sat, Sep 06, 2008 at 03:14:45PM -0400, JJ Reynolds wrote: Hi all, This is a followup to the excellent patch which allows static IP address assignment. The problem with that patch is that you can only set the host name and cannot set a FQDN because dnsmasq will, as a security measure, not allow it unless --domain is specified. This patch adds support for adding domain name=my.domain / to the network config file. With that stanza, one can then use FQDNs on the static host assignments, and this should be the domain reported for any clients that request it. If domain name .. ./ is not specified in the config file, then there is no change in behaviour. As a special case, you can also set the domain name to #, whereupon dnsmasq interprets that to use the domain of the host OS. Dan pointed out a leak since the net-domain structure was not freed, I applied the patch in time for 0.4.5 with that fix added. We still need to add documentation for the feature, would you mind making a patch for formatnetwork.html.in describing the new element ad attribute and adding maybe an example ? thanks ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
[libvirt] Release of libvirt-0.4.5
It was really time for a new release, the ChangeLog is huge ... Main features are the improvement of OpenVZ and LXC, the uniform XML handling (and hence format) though all drivers, improvements in devices handling for QEmu/KVM and storage pool source discovery. Available as usual at ftp://libvirt.org/libvirt/ Full log of change is huge: * New features: - NETNS support for Linux containers (Dan Smith) - unified XML domain and network parsing for all drivers (Daniel Berrange) - OpenVZ features improvements (Evgeniy Sokolov) - OpenVZ and Linux containers support now default - USB device passthrough for QEmu/KVM (Guido Günther) - storage pool source discovery (David Lively) * Portability: - fixes for MinGW (Atsushi SAKAI and Daniel Berrange) - detection of xen lib improvement (David Lively) - storage backend portability for SLES (David Lively) - fix make distclean and distcheck (Jim Meyering) - fix build failures on RHEL4 - lot of MinGW portability fixes (Atsushi SAKAI and Daniel Berrange) - HTML generation fix - -lpthread explicit linking when needed (Jim Meyering) * Documentation: - various typo fixes (Anton Protopopov, Toth István, Atsushi SAKAI, Nguyen Anh Quynh) - Java bindings docs - remove Xen centric comments (Guido Günther) - various typo in comments (Chris Lalancette) - docs and API comments fixes (Charles Duffy) - how to contribute to open source link (Richard Jones) - memory unit fixups (matthew chan) * Bug fixes: - memory leaks and testing for OOM (Daniel Berrange) - do_open driver bug(Evgeniy Sokolov) - don't use polkit auth when running as non-root (Daniel Berrange) - boot of CDRom devices in QEmu/KVM (Daniel Berrange) - fix OpenVZ probe function (Evgeniy Sokolov) - ID related lookup fixes in OpenVZ (Evgeniy Sokolov) - pool cration for netfs (Cole Robinson) - check for migrate support with QEmu (Guido Günther) - check against double create with QEmu (Guido Günther) - broken open failure detection in QEmu (Guido Günther) - UUID string conversions in QEmu (Guido Günther) - various small cleanup and bug fixes (Daniel Berrange) - ID related fixes in the test driver (Daniel Berrange) - better error reporting on XML parsing (Daniel Berrange) - empty CD-ROM source device section (Chris Lalancette) - avoid crashes for interface without a name in QEmu (Guido Günther) - provide the real vncport (Charles Duffy) - fix forward delay (Daniel Berrange) - new VM state is initialized to be SHUTOFF (Daniel Berrange) - virsh attach-disk bug fixes (Chris Lalancette) - veth clash of device names (Dan Smith) - connection lookup fixes on storage creation (Cole Robinson) - parted call fix (Cole Robinson) - use server option when using serial/telnet with QEmu (Mark McLoughlin) - duplicate virInitialize calls (Nguyen Anh Quynh) - many fixes to virExec and related functions (Daniel Berrange) - size of disk without partitions (Cole Robinson) - creating and cleaning up logical volumes with target path (Cole Robinson) - fix reporting of virConnectOpen problems (Daniel Berrange) - veth cleanup at shutdown (Dan Smith) - lookup of Xen VMs after define (Cole Robinson) - fix emulator reported capabilities (Cole Robinson) - avoid segfault on KVM CD eject (Cole Robinson) - fix disk ordering and avoid duplicate in QEmu XML parsing (Cole Robinson) - update domain XML after device hotplug (Cole Robinson) - use poweroff instead of halt when shutting down a Xen domain (John Levon) - don't dump core of Xen domain live by default (John Levon) - vgcreate command line size bug (Jim Fehlig) - signed/unsigned issue in probing file (Cole Robinson) - Fix Xen domains without PVFB console (Daniel Berrange) - OpenVZ config read bug fix (Evgeniy Sokolov). * Improvements: - improved failure diagnostic for TAP (Jim Meyering) - better exec and error diagnostic for OpenVZ commands (Evgeniy Sokolov) - OpenVZ auto start and stop of domains (Evgeniy Sokolov) - OpenVZ domain cpu time consumption (Evgeniy Sokolov) - virsh shutdown improvements and test (Jim Meyering) - better report of XML well formedness errors (Richard Jones) - new XML elements (Daniel Berrange) - virsh edit command (Richard Jones) - save UUID of OpenVZ domains (Evgeniy Sokolov) - improve xen blocks statistics (Chris Lalancette) - gnulib updates (Jim Meyering) - allow to add disk as USB devices (Guido Günther) - LXC container process should survive libvirtd restarts (Daniel Berrange) - allow to define static host domain configs - number of CPU used by OpenVZ domains (Evgeniy Sokolov) - private root fs for LXC (Daniel Berrange) - storage source information in storage pools (David Lively) - virsh reports attach and detach success (Cole Robinson) - detect failure in QEmu eject command (Cole Robinson) - add support for eect on floppy and SCSI cdroms for QEmu (Cole Robinson) - LXC hypervisor version extraction (Dan Smith) - Augeas config file support (Daniel Berrange) - support for a domain name in
Re: [libvirt] ld: unknown option: --version-script
On Mon, Sep 08, 2008 at 08:29:30AM -0700, Yushu Yao wrote: Hi All, A question when porting to Mac. It says: ld: unknown option: --version-script=./libvirt_sym.version collect2: ld returned 1 exit status make[2]: *** [libvirt.la] Error 1 Indeed --version-script doesn't exist in mac's ld. Can I change it to something else with them same functionality? How should I do it? I don't know how to do this, I never touched a Mac (well I did once but it sponteaneously rebooted, I assume I'm not compatible). The goal of --version-script=./libvirt_sym.version is to restrict the set of exported symbols available in the library to just the list in libvirt_sym.version and not include all public symbols from the C modules which is the default behaviour. Just find a way to limit the set of public symbols, that has to be possible in some ways. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH] read network config in OpenVZ driver
On Mon, Sep 08, 2008 at 03:59:55PM +0400, Evgeniy Sokolov wrote: This patch add possibility to load network configuration for container in OpenVZ driver. It support routing network and bridge devices. This types is currently supported in create/define command. Also, patch contain fix to small bug in openvzReadConfigParam method. It was too late to add this to 0.4.5 but ... @@ -298,10 +442,13 @@ openvzReadConfigParam(int vpsid ,const c if (STREQLEN(line, param, strlen(param))) { sf = line; sf += strlen(param); -if (sf[0] == '=' (token = strtok_r(sf,\\t=\n, saveptr)) != NULL) { -strncpy(value, token, maxlen) ; -value[maxlen-1] = '\0'; -found = 1; +if (sf[0] == '=' sf[1] != '\0' ) { +sf ++; +if ((token = strtok_r(sf,\\t\n, saveptr)) != NULL) { +strncpy(value, token, maxlen) ; +value[maxlen-1] = '\0'; +found = 1; +} } } } I commited that bug fix before the release though, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH] Implement vol delete for disk pools
On Mon, Sep 08, 2008 at 09:33:40AM -0400, Cole Robinson wrote: Daniel Veillard wrote: +devname = basename(devpath); +srcname = basename(pool-def-source.devices[0].path); This seems to leak the two strings and not check for errors. That would need to be fixed before being commited IMHO glibc defines basename in string.h as: char * basename (filename) const char *filename; I got fooled by the char * return value, my bad, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ [EMAIL PROTECTED] | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] Mac Port of Libvirt
On Mon, Sep 08, 2008 at 09:42:32AM -0700, Yushu Yao wrote: On 9/8/08 12:17 AM, Daniel Veillard [EMAIL PROTECTED] wrote: On Fri, Sep 05, 2008 at 11:43:41AM -0700, Yushu Yao wrote: Thanks Daniel, Now support for local virtualization (QEmu for example) would be a more complex issue but probably not much more complex than existing linux hypervisor support. Why is this more complex? Could you please explain a bit more? Because that's code which would have to be designed/ported, instead of just recompiling completely generic code which has already been ported to Windows. By the way, with libvirt, can I control a hypervisor without the libvirtd running with root privilege (or even without libvirtd running at all?)? You should not assume this is possible. Just curious, why there is an option --without-libvirtd in configure? (Which actually works and make will not produce libvirtd.exe) The primary use is for people building on Windows, who want to get the libvirt client APIs, but not the server daemon. It lets them managed Linux hosts from Windows. Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] Does libvirt support Xen on Solaris?
On Fri, Sep 5, 2008 at 4:08 AM, atif bajwa [EMAIL PROTECTED] wrote: Thanks, But does libvirt supports xVM Virtualbox and xVM Server? I think Sun has published some web services API for these platforms. xVM Virtualbox does not have libvirt support to my knowledge. xVM server will have a running virtd, but it won't be enabled for remote access by default. An in an OpenSolaris based dom0, you should get the same basic behavior that you'd see in a RHEL 5.x, etc. MRJ Regards, Atif On Wed, Sep 3, 2008 at 3:52 PM, Mark Johnson [EMAIL PROTECTED] wrote: On Wed, Sep 3, 2008 at 8:30 AM, atif bajwa [EMAIL PROTECTED] wrote: Hi! Does libvirt supports Xen on Solaris? Yes. If so what is version of libvirt and Solaris? I believe we currently have 0.4.0 integrated in current Nevada/OpenSolaris builds. MRJ Regards, Atif -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH] kvm: maxVCPU runtime detection
On Fri, Sep 05, 2008 at 12:23:36PM -0400, Cole Robinson wrote: [..snip..] FYI, I'm about to post a patch that builds on this to offer max vcpu checking based on the kvm version which is parsed from the help message. Should also help providing useful values for older kernels and kvm versions. This is difficult since different architectures gained vcpu support in different stages but even limited to i386/amd64 this is useful. We should try the ioctal first in any case I think. -- Guido -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
[libvirt] [PATCH] Fix segfault if no qemu emulator passed
There is unfortunately a pretty prevalent segfault in the latest libvirt. If a qemu domain is defined without an emulator specified, libvirtd crashes. This is doubly unfortunate since current virtinst generates an emulator-less config for all qemu and kvm guests (I'm about to fix this upstream though). Attached patch fixes this. Thanks, Cole diff --git a/src/qemu_conf.c b/src/qemu_conf.c index d742c32..23ef050 100644 --- a/src/qemu_conf.c +++ b/src/qemu_conf.c @@ -790,7 +790,7 @@ int qemudBuildCommandLine(virConnectPtr conn, if (!emulator) return -1; -ADD_ARG_LIT(vm-def-emulator); +ADD_ARG_LIT(emulator); ADD_ARG_LIT(-S); ADD_ARG_LIT(-M); ADD_ARG_LIT(vm-def-os.machine); -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list