On Wed, Aug 26, 2009 at 02:03:07PM +0100, Daniel P. Berrange wrote:
[...]
+ if (def->hugepage_backed) {
+ if (!driver->hugetlbfs_mount) {
+ qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
+ "%s", _("hugetlbfs filesystem is not
mounted"));
+ goto error;
+ }
+ if (!driver->hugepage_path) {
+ qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
+ "%s", _("hugepages are disabled by
administrator config"));
+ goto error;
+ }
+ if (!(qemuCmdFlags & QEMUD_CMD_FLAG_MEM_PATH)) {
+ qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
+ _("hugepage backing not supported by
'%s'"),
+ def->emulator);
+ goto error;
+ }
+ ADD_ARG_LIT("-mem-path");
+ ADD_ARG_LIT(driver->hugepage_path);
+ }
Hum, I wonder why hugepage, which IMHO are just a performance improvement,
should break guest startup if asked and not available for some reason.
Maybe it's just fine to emit the error here but allow the guest to
continue. Another question I have is about migration, suppose you
migrate from a host where hugepage are allowed and the domain makes use
of them, what's going on if you try to migrate to a destination where
it's not available. Should that be added in some way to migration
prerequisite checkings (if KVM doesn't already take care of it).
ADD_ARG_LIT("-smp");
ADD_ARG_LIT(vcpus);
Looks fine, I'm also wondering what's happening if HAVE_MNTENT_H
is not found, it's C99 but ...
ACK
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/