From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FBdCC-0007Gr-0p for qemu-devel@nongnu.org; Tue, 21 Feb 2006 14:29:12 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FBdC9-0007FR-Sq for qemu-devel@nongnu.org; Tue, 21 Feb 2006 14:29:10 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FBdC8-0007Ej-Cj for qemu-devel@nongnu.org; Tue, 21 Feb 2006 14:29:08 -0500 Received: from [193.7.176.20] (helo=bender.bawue.de) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.52) id 1FBdIS-0005rG-2w for qemu-devel@nongnu.org; Tue, 21 Feb 2006 14:35:40 -0500 Received: from lagash (unknown [194.74.144.146]) (using TLSv1 with cipher DES-CBC3-SHA (168/168 bits)) (No client certificate requested) by bender.bawue.de (Postfix) with ESMTP id B235944169 for ; Tue, 21 Feb 2006 20:29:06 +0100 (MET) Received: from ths by lagash with local (Exim 4.60) (envelope-from ) id 1FBdCS-0004rg-AJ for qemu-devel@nongnu.org; Tue, 21 Feb 2006 19:29:28 +0000 Date: Tue, 21 Feb 2006 19:29:28 +0000 Message-ID: <20060221192928.GD4110@networkno.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline From: Thiemo Seufer Subject: [Qemu-devel] [PATCH] Fix Harddisk initialization Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hello All, this fixes Harddisk initialization (s->nsector is initially 0x100, which is supposed to get handled as zero). Thiemo Index: qemu-work/hw/ide.c =================================================================== --- qemu-work.orig/hw/ide.c 2006-02-18 22:12:56.000000000 +0000 +++ qemu-work/hw/ide.c 2006-02-19 02:34:13.000000000 +0000 @@ -1550,12 +1550,12 @@ ide_set_irq(s); break; case WIN_SETMULT: - if (s->nsector > MAX_MULT_SECTORS || + if ((s->nsector & 0xFF) > MAX_MULT_SECTORS || s->nsector == 0 || (s->nsector & (s->nsector - 1)) != 0) { ide_abort_command(s); } else { - s->mult_sectors = s->nsector; + s->mult_sectors = s->nsector & 0xFF; s->status = READY_STAT; } ide_set_irq(s);