From 6fe1fdc57802c699022d3b54920a435daabef969 Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Tue, 29 Apr 2008 11:30:42 +0100 Subject: [PATCH] kvm: qemu: Allow booting from extboot drive with -kernel The -kernel option generates a new boot sector for the boot drive which jumps directly to the supplied kernel rather than running the standard bootloader. Trivially fix generate_bootsect() to handle the case where we're booting using extboot. Signed-off-by: Mark McLoughlin --- qemu/hw/pc.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/qemu/hw/pc.c b/qemu/hw/pc.c index 48a36e0..506ef6b 100644 --- a/qemu/hw/pc.c +++ b/qemu/hw/pc.c @@ -405,11 +405,12 @@ static void generate_bootsect(uint32_t gpr[8], uint16_t segs[6], uint16_t ip) { uint8_t bootsect[512], *p; int i; - int hda; + int hda = extboot_drive; - hda = drive_get_index(IF_IDE, 0, 0); + if (hda == -1) + hda = drive_get_index(IF_IDE, 0, 0); if (hda == -1) { - fprintf(stderr, "A disk image must be given for 'hda' when booting " + fprintf(stderr, "-hda or -drive boot=on must be given when booting " "a Linux kernel\n"); exit(1); } -- 1.5.4.1