lkml.org 
[lkml]   [2007]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 30/40] ide: Fix siimage driver accessing beyond array boundary

    -stable review patch. If anyone has any objections, please let us know.

    ------------------
    From: Benjamin Herrenschmidt <benh@kernel.crashing.org>

    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 <benh@kernel.crashing.org>
    Cc: Andrew Morton <akpm@osdl.org>
    Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    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/

    \
     
     \ /
      Last update: 2007-11-15 08:09    [W:0.021 / U:154.196 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site