On Tue, Dec 11, 2012 at 01:33:33PM -0600, Doug Goldstein wrote: > On Tue, Dec 11, 2012 at 1:08 PM, Roman Bogorodskiy > diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c > index ab04599..5d355eb 100644 > --- a/src/qemu/qemu_process.c > +++ b/src/qemu/qemu_process.c > @@ -27,7 +27,12 @@ > #include <sys/stat.h> > #include <sys/time.h> > #include <sys/resource.h> > +#if defined(__linux__) > #include <linux/capability.h> > +#elif defined(__FreeBSD__) > +#include <sys/param.h> > +#include <sys/cpuset.h> > +#endif > > #include "qemu_process.h" > #include "qemu_domain.h" > @@ -3707,7 +3712,12 @@ int qemuProcessStart(virConnectPtr conn, > /* in case a certain disk is desirous of CAP_SYS_RAWIO, add this */ > for (i = 0; i < vm->def->ndisks; i++) { > if (vm->def->disks[i]->rawio == 1) > +#ifdef CAP_SYS_RAWIO > virCommandAllowCap(cmd, CAP_SYS_RAWIO); > +#else > + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", > + _("Raw I/O is not supported on this platform")); > +#endif > } > > It probably would be better to not allow VMs to be defined with rawio > enabled if this the case. You'll want to make these changes in > src/conf/domain_conf.c No, the XML parser should not apply semantic checks while parsing. We've been down that route before and it wasn't pretty. Using VIR_ERR_CONFIG_UNSUPPORTED is the correct approach here. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list