From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=37677 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PyOSd-0001Wo-Ua for qemu-devel@nongnu.org; Sat, 12 Mar 2011 08:02:24 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PyOSc-00067e-UT for qemu-devel@nongnu.org; Sat, 12 Mar 2011 08:02:23 -0500 Received: from mail-vw0-f45.google.com ([209.85.212.45]:42868) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PyOSc-00067S-MR for qemu-devel@nongnu.org; Sat, 12 Mar 2011 08:02:22 -0500 Received: by vws17 with SMTP id 17so1484963vws.4 for ; Sat, 12 Mar 2011 05:02:22 -0800 (PST) MIME-Version: 1.0 In-Reply-To: References: From: Blue Swirl Date: Sat, 12 Mar 2011 15:02:02 +0200 Message-ID: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] Re: fdc: refactor device creation causes guest kernel panic List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi Cc: qemu-devel On Sat, Mar 12, 2011 at 2:58 PM, Stefan Hajnoczi wrote= : > On Sat, Mar 12, 2011 at 10:53 AM, Blue Swirl wrote= : >> The logic for calculating the drive state in pc.c does not match fdc.c >> logic. Please try this patch. >> >> diff --git a/hw/pc.c b/hw/pc.c >> index 5966bf1..4d67d9f 100644 >> --- a/hw/pc.c >> +++ b/hw/pc.c >> @@ -382,7 +382,7 @@ void pc_cmos_init(ram_addr_t ram_size, ram_addr_t >> above_4g_mem_size, >> =C2=A0 =C2=A0 /* floppy type */ >> =C2=A0 =C2=A0 for (i =3D 0; i < 2; i++) { >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 fd[i] =3D drive_get(IF_FLOPPY, 0, i); >> - =C2=A0 =C2=A0 =C2=A0 =C2=A0if (fd[i]) { >> + =C2=A0 =C2=A0 =C2=A0 =C2=A0if (fd[i] && bdrv_is_inserted(fd[i]->bdrv))= { >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 bdrv_get_floppy_geometry_hint(= fd[i]->bdrv, &nb_heads, &max_track, >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 &last_sect, FDRIVE_DRV_NONE, >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 &fd_type[i]); >> > > This patch fixes the problem, thanks! > > Tested-by: Stefan Hajnoczi Thank you for testing, applied.