From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57435) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhgJk-0005NB-Hy for qemu-devel@nongnu.org; Thu, 01 Oct 2015 12:02:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZhgJg-0004CQ-HI for qemu-devel@nongnu.org; Thu, 01 Oct 2015 12:02:48 -0400 Received: from mail-qk0-f181.google.com ([209.85.220.181]:36833) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhgJg-0004Bp-9u for qemu-devel@nongnu.org; Thu, 01 Oct 2015 12:02:44 -0400 Received: by qkcf65 with SMTP id f65so31037916qkc.3 for ; Thu, 01 Oct 2015 09:02:43 -0700 (PDT) Date: Thu, 1 Oct 2015 12:02:42 -0400 From: Kevin O'Connor Message-ID: <20151001160242.GA7766@morn.lan> References: <1443701677-13629-1-git-send-email-markmb@redhat.com> <1443701819-13855-1-git-send-email-markmb@redhat.com> <1443701819-13855-7-git-send-email-markmb@redhat.com> <560D5057.6010308@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <560D5057.6010308@redhat.com> Subject: Re: [Qemu-devel] [PATCH v4 6/7] Make the kernel image in the fw_cfg DMA interface bootable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Laszlo Ersek Cc: Drew , Stefan Hajnoczi , "Gabriel L. Somlo" , qemu-devel@nongnu.org, Gerd Hoffmann , Marc =?iso-8859-1?Q?Mar=ED?= On Thu, Oct 01, 2015 at 05:25:11PM +0200, Laszlo Ersek wrote: > On 10/01/15 14:16, Marc Marí wrote: > > Add an entry to the bootorder file with name "vmlinux". > > Give this entry more priority than the romfile. > > > > Signed-off-by: Marc Marí > > --- > > hw/i386/pc.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/hw/i386/pc.c b/hw/i386/pc.c > > index 81d93b4..c4c51f7 100644 > > --- a/hw/i386/pc.c > > +++ b/hw/i386/pc.c > > @@ -1012,8 +1012,10 @@ static void load_linux(PCMachineState *pcms, > > fw_cfg_add_bytes(fw_cfg, FW_CFG_SETUP_DATA, setup, setup_size); > > > > option_rom[nb_option_roms].name = "linuxboot.bin"; > > - option_rom[nb_option_roms].bootindex = 0; > > + option_rom[nb_option_roms].bootindex = 1; > > nb_option_roms++; > > + > > + add_boot_device_path(0, NULL, "vmlinux"); > > } > > > > #define NE2000_NB_MAX 6 > > > > Where does this idea come from? > > This will yet again break the invariant that the bootorder fw_cfg file > is a list of OpenFirmware device paths. I believe it came from a discussion between myself and Marc, because I did not like the way Marc's original SeaBIOS patches overloaded the meaning of "genroms/linuxboot.bin" in the bootorder file. [...] > Given that direct kernel boot is always expected to take priority over > anything else (which is ensured by this QEMU patch too), can > bootprio_find_vmlinux() in SeaBIOS just look at the same fw_cfg key > (0x0008)? That's fine with me. Marc - I think qemu_vmlinux_setup() in SeaBIOS with the following would work: void qemu_vmlinux_setup(void) { u32 kernel_size; qemu_cfg_read_entry(&kernel_size, QEMU_CFG_KERNEL_SIZE, sizeof(kernel_size)); if (kernel_size) boot_add_qemu_vmlinux("QEMU Kernel image", 0); } Marc, if you're okay with the above, you don't have to keep respinning patches - I can fix it up upon commit. -Kevin