When booting via xm, only run the bootloader if it's in non-interactive mode:
authorTim Deegan <Tim.Deegan@xensource.com>
Tue, 9 Jan 2007 13:24:45 +0000 (13:24 +0000)
committerTim Deegan <Tim.Deegan@xensource.com>
Tue, 9 Jan 2007 13:24:45 +0000 (13:24 +0000)
otherwise we lose the user's named kernel and try to bootload the temporary
file pygrub returned.

Signed-off-by: John Levon <john.levon@sun.com>
tools/python/xen/xm/create.py

index 175e0fffc7300a5155b6034351177c0858a86c95..094b583d57532133801cf995663a556967cbc6dd 100644 (file)
@@ -765,7 +765,12 @@ def make_config(vals):
     if vals.bootloader:
         if vals.bootloader == "pygrub":
             vals.bootloader = osdep.pygrub_path
-        config_image = run_bootloader(vals, config_image)
+
+        # if a kernel is specified, we're using the bootloader
+        # non-interactively, and need to let xend run it so we preserve the
+        # real kernel choice.
+        if not vals.kernel:
+            config_image = run_bootloader(vals, config_image)
         config.append(['bootloader', vals.bootloader])
         if vals.bootargs:
             config.append(['bootloader_args', vals.bootargs])