diff options
author | Daniel Drake <dsd@gentoo.org> | 2005-05-12 12:31:27 +0100 |
---|---|---|
committer | <chrisw@vas.sous-sol.org> | 2005-05-26 21:20:05 -0700 |
commit | bb2c14017115369ba23f7fe86309e725bd2ee9b5 (patch) | |
tree | 985f06b4984801a96fc66829dae406b419dae7d7 | |
parent | de116e6f648b419fc9fe5cebda8b2c3f90ab1206 (diff) | |
download | linux-stable-bb2c14017115369ba23f7fe86309e725bd2ee9b5.tar.gz linux-stable-bb2c14017115369ba23f7fe86309e725bd2ee9b5.tar.bz2 linux-stable-bb2c14017115369ba23f7fe86309e725bd2ee9b5.zip |
[PATCH] ide-disk: Fix LBA8 DMA
This is from Gentoo's 2.6.11 patchset. A problem was introduced in 2.6.10
where some users could not enable DMA on their disks (particularly ALi15x3
users). This was a small mistake with the no_lba48_dma flag.
I can't find the exact commit but this is definately included in 2.6.12-rc4.
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Chris Wright <chrisw@osdl.org>
-rw-r--r-- | drivers/ide/ide-disk.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c index db55f241f76f..e41f7c3b9789 100644 --- a/drivers/ide/ide-disk.c +++ b/drivers/ide/ide-disk.c @@ -133,6 +133,8 @@ static ide_startstop_t __ide_do_rw_disk(ide_drive_t *drive, struct request *rq, if (hwif->no_lba48_dma && lba48 && dma) { if (block + rq->nr_sectors > 1ULL << 28) dma = 0; + else + lba48 = 0; } if (!dma) { @@ -146,7 +148,7 @@ static ide_startstop_t __ide_do_rw_disk(ide_drive_t *drive, struct request *rq, /* FIXME: SELECT_MASK(drive, 0) ? */ if (drive->select.b.lba) { - if (drive->addressing == 1) { + if (lba48) { task_ioreg_t tasklets[10]; pr_debug("%s: LBA=0x%012llx\n", drive->name, block); |