Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933690AbXKOHFq (ORCPT ); Thu, 15 Nov 2007 02:05:46 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S932602AbXKOGsA (ORCPT ); Thu, 15 Nov 2007 01:48:00 -0500 Received: from pentafluge.infradead.org ([213.146.154.40]:58173 "EHLO pentafluge.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1764448AbXKOGr6 (ORCPT ); Thu, 15 Nov 2007 01:47:58 -0500 Date: Wed, 14 Nov 2007 22:45:32 -0800 From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org, stable@kernel.org Cc: Justin Forbes , Zwane Mwaikambo , "Theodore Ts'o" , Randy Dunlap , Dave Jones , Chuck Wolber , Chris Wedgwood , Michael Krufky , Chuck Ebbert , Domenico Andreoli , torvalds@linux-foundation.org, akpm@linux-foundation.org, alan@lxorguk.ukuu.org.uk, Benjamin Herrenschmidt , Andrew Morton , Sergei Shtylyov , Bartlomiej Zolnierkiewicz Subject: [patch 30/40] ide: Fix siimage driver accessing beyond array boundary Message-ID: <20071115064532.GE19218@kroah.com> References: <20071115062710.885284510@mini.kroah.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline; filename="ide-fix-siimage-driver-accessing-beyond-array-boundary.patch" In-Reply-To: <20071115064302.GA19218@kroah.com> User-Agent: Mutt/1.5.16 (2007-06-09) X-Bad-Reply: References and In-Reply-To but no 'Re:' in Subject. Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1494 Lines: 43 -stable review patch. If anyone has any objections, please let us know. ------------------ From: Benjamin Herrenschmidt patch a87a87ccdc541e0a0cc8c7d01a365be8d9153a7b in mainline. The siimage uses an incorrect construct to access the other drive of a pair, causing it to access beyond an array boundary on the secondary interface. This fixes it by using the new ide_get_paired_drive() helper instead. Bart: patch description fixes Signed-off-by: Benjamin Herrenschmidt Cc: Andrew Morton Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Greg Kroah-Hartman --- drivers/ide/pci/siimage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/ide/pci/siimage.c +++ b/drivers/ide/pci/siimage.c @@ -180,7 +180,7 @@ static void sil_tune_pio(ide_drive_t *dr const u16 data_speed[] = { 0x328a, 0x2283, 0x1104, 0x10c3, 0x10c1 }; ide_hwif_t *hwif = HWIF(drive); - ide_drive_t *pair = &hwif->drives[drive->dn ^ 1]; + ide_drive_t *pair = ide_get_paired_drive(drive); u32 speedt = 0; u16 speedp = 0; unsigned long addr = siimage_seldev(drive, 0x04); -- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/