[patch 24/31] libata bugfix: preserve LBA bit for HDIO_DRIVE_TASK

Greg KH
2007-04-11T22:55:34Z

[-- Attachment #1: libata-bugfix-preserve-lba-bit-for-hdio_drive_task.patch --]
[-- Type: text/plain, Size: 877 bytes --]

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

------------------
From: Mark Lord <mlord@pobox.com>

libata bugfix: preserve LBA bit for HDIO_DRIVE_TASK

Preserve the LBA bit in the DevSel/Head register for HDIO_DRIVE_TASK.

Signed-off-by: Mark Lord <mlord@pobox.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Cc: Chuck Ebbert <cebbert@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

---
drivers/ata/libata-scsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@ -295,7 +295,7 @@ int ata_task_ioctl(struct scsi_device *s
scsi_cmd[8] = args[3];
scsi_cmd[10] = args[4];
scsi_cmd[12] = args[5];
- scsi_cmd[13] = args[6] & 0x0f;
+ scsi_cmd[13] = args[6] & 0x4f;
scsi_cmd[14] = args[0];

/* Good values for timeout and retries? Values below

--