X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=src%2Fguestfs.c;h=40e702e0b9172bcdc7e39c87104b21fc665aa5eb;hp=5750a4f433936ee4238b55fdc2369c804ddc039c;hb=ad7818c34d4d6ef6b0959ef7dbbf006968166030;hpb=34d2df41626f1ee4172a6d40b06d72d6ed9d6348 diff --git a/src/guestfs.c b/src/guestfs.c index 5750a4f..40e702e 100644 --- a/src/guestfs.c +++ b/src/guestfs.c @@ -174,7 +174,6 @@ struct guestfs_h char *path; /* Path to kernel, initrd. */ char *qemu; /* Qemu binary. */ char *append; /* Append to kernel command line. */ - char *kernel; /* Override appliance kernel. */ int memsize; /* Size of RAM (megabytes). */ @@ -250,12 +249,6 @@ guestfs_create (void) if (!g->append) goto error; } - str = getenv ("LIBGUESTFS_KERNEL"); - if (str) { - g->kernel = strdup (str); - if (!g->kernel) goto error; - } - /* Choose a suitable memory size. Previously we tried to choose * a minimal memory size, but this isn't really necessary since * recent QEMU and KVM don't do anything nasty like locking @@ -447,19 +440,21 @@ guestfs_perrorf (guestfs_h *g, const char *fs, ...) { va_list args; char *msg; - int err = errno; + int errnum = errno; va_start (args, fs); - vasprintf (&msg, fs, args); + int err = vasprintf (&msg, fs, args); va_end (args); + if (err < 0) return; + #ifndef _GNU_SOURCE char buf[256]; - strerror_r (err, buf, sizeof buf); + strerror_r (errnum, buf, sizeof buf); #else char _buf[256]; char *buf; - buf = strerror_r (err, _buf, sizeof _buf); + buf = strerror_r (errnum, _buf, sizeof _buf); #endif msg = safe_realloc (g, msg, strlen (msg) + 2 + strlen (buf) + 1); @@ -681,22 +676,6 @@ guestfs_get_append (guestfs_h *g) } int -guestfs_set_kernel (guestfs_h *g, const char *kernel) -{ - free (g->kernel); - g->kernel = NULL; - - g->kernel = kernel ? safe_strdup (g, kernel) : NULL; - return 0; -} - -const char * -guestfs_get_kernel (guestfs_h *g) -{ - return g->kernel; -} - -int guestfs_set_memsize (guestfs_h *g, int memsize) { g->memsize = memsize; @@ -1066,7 +1045,9 @@ guestfs_launch (guestfs_h *g) "console=ttyS0 " /* serial console */ \ "udevtimeout=300 " /* good for very slow systems (RHBZ#480319) */ \ "noapic " /* workaround for RHBZ#502058 - ok if not SMP */ \ - "acpi=off " /* we don't need ACPI, turn it off */ + "acpi=off " /* we don't need ACPI, turn it off */ \ + "cgroup_disable=memory " /* saves us about 5 MB of RAM */ \ + "selinux=0 " /* SELinux is messed up if there's no policy */ /* Linux kernel command line. */ snprintf (append, sizeof append, @@ -1081,7 +1062,7 @@ guestfs_launch (guestfs_h *g) add_cmdline (g, memsize_str); add_cmdline (g, "-no-reboot"); /* Force exit instead of reboot on panic */ add_cmdline (g, "-kernel"); - add_cmdline (g, g->kernel ? : (char *) kernel); + add_cmdline (g, (char *) kernel); add_cmdline (g, "-initrd"); add_cmdline (g, (char *) initrd); add_cmdline (g, "-append");