[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-ide
Subject: [BK PATCH] 2.6.x libata bug fix
From: Jeff Garzik <jgarzik () pobox ! com>
Date: 2004-10-27 0:00:57
Message-ID: 20041027000057.GA28982 () havoc ! gtf ! org
[Download RAW message or body]
Sigh...
Please do a
bk pull bk://gkernel.bkbits.net/libata-2.6
This will update the following files:
drivers/scsi/libata-scsi.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
through these ChangeSets:
<jgarzik@pobox.com> (04/10/26 1.2069)
[libata] use kunmap_atomic() correctly
diff -Nru a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c
--- a/drivers/scsi/libata-scsi.c 2004-10-26 19:59:30 -04:00
+++ b/drivers/scsi/libata-scsi.c 2004-10-26 19:59:30 -04:00
@@ -742,13 +742,13 @@
* spin_lock_irqsave(host_set lock)
*/
-static inline void ata_scsi_rbuf_put(struct scsi_cmnd *cmd)
+static inline void ata_scsi_rbuf_put(struct scsi_cmnd *cmd, u8 *buf)
{
if (cmd->use_sg) {
struct scatterlist *sg;
sg = (struct scatterlist *) cmd->request_buffer;
- kunmap_atomic(sg->page, KM_USER0);
+ kunmap_atomic(buf - sg->offset, KM_USER0);
}
}
@@ -778,7 +778,7 @@
buflen = ata_scsi_rbuf_get(cmd, &rbuf);
memset(rbuf, 0, buflen);
rc = actor(args, rbuf, buflen);
- ata_scsi_rbuf_put(cmd);
+ ata_scsi_rbuf_put(cmd, rbuf);
if (rc)
ata_bad_cdb(cmd, args->done);
@@ -1264,7 +1264,7 @@
buflen = ata_scsi_rbuf_get(cmd, &buf);
buf[2] = 0x5;
buf[3] = (buf[3] & 0xf0) | 2;
- ata_scsi_rbuf_put(cmd);
+ ata_scsi_rbuf_put(cmd, buf);
}
cmd->result = SAM_STAT_GOOD;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic