rpms/kernel/F-13 ibmvscsi-fix-DMA-API-misuse.patch, NONE, 1.1 kernel.spec, 1.2015, 1.2016
Kyle McMartin
kyle at fedoraproject.org
Tue May 4 14:01:08 UTC 2010
Author: kyle
Update of /cvs/pkgs/rpms/kernel/F-13
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv9219
Modified Files:
kernel.spec
Added Files:
ibmvscsi-fix-DMA-API-misuse.patch
Log Message:
* Tue May 4 2010 Kyle McMartin <kyle at redhat.com> 2.6.33.3-80
- ibmvscsi-fix-DMA-API-misuse.patch (#579454)
ibmvscsi-fix-DMA-API-misuse.patch:
ibmvscsi.c | 30 ++----------------------------
1 file changed, 2 insertions(+), 28 deletions(-)
--- NEW FILE ibmvscsi-fix-DMA-API-misuse.patch ---
>From b395ecef0de15c10459856e56a590ac1fe16be76 Mon Sep 17 00:00:00 2001
From: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
Date: Fri, 2 Apr 2010 15:50:24 +0900
Subject: [SCSI] ibmvscsi: fix DMA API misuse
ibmvscsi uses dma_unmap_single() for buffers mapped via
dma_map_sg(). It works however it's the API violation. The DMA debug
facility complains about it:
http://marc.info/?l=linux-scsi&m=127018555013151&w=2
Reported-by: Sachin Sant <sachinp at in.ibm.com>
Tested-by: Sachin Sant <sachinp at in.ibm.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
Signed-off-by: James Bottomley <James.Bottomley at suse.de>
(cherry picked from a71fa1fc43a29133f13ae6ada1a389ca298c0934)
---
drivers/scsi/ibmvscsi/ibmvscsi.c | 29 ++---------------------------
1 files changed, 2 insertions(+), 27 deletions(-)
diff --git a/drivers/scsi/ibmvscsi/ibmvscsi.c b/drivers/scsi/ibmvscsi/ibmvscsi.c
index e475b79..3b14bbe 100644
--- a/drivers/scsi/ibmvscsi/ibmvscsi.c
+++ b/drivers/scsi/ibmvscsi/ibmvscsi.c
@@ -321,16 +321,6 @@ static void set_srp_direction(struct scsi_cmnd *cmd,
srp_cmd->buf_fmt = fmt;
}
-static void unmap_sg_list(int num_entries,
- struct device *dev,
- struct srp_direct_buf *md)
-{
- int i;
-
- for (i = 0; i < num_entries; ++i)
- dma_unmap_single(dev, md[i].va, md[i].len, DMA_BIDIRECTIONAL);
-}
-
/**
* unmap_cmd_data: - Unmap data pointed in srp_cmd based on the format
* @cmd: srp_cmd whose additional_data member will be unmapped
@@ -348,24 +338,9 @@ static void unmap_cmd_data(struct srp_cmd *cmd,
if (out_fmt == SRP_NO_DATA_DESC && in_fmt == SRP_NO_DATA_DESC)
return;
- else if (out_fmt == SRP_DATA_DESC_DIRECT ||
- in_fmt == SRP_DATA_DESC_DIRECT) {
- struct srp_direct_buf *data =
- (struct srp_direct_buf *) cmd->add_data;
- dma_unmap_single(dev, data->va, data->len, DMA_BIDIRECTIONAL);
- } else {
- struct srp_indirect_buf *indirect =
- (struct srp_indirect_buf *) cmd->add_data;
- int num_mapped = indirect->table_desc.len /
- sizeof(struct srp_direct_buf);
- if (num_mapped <= MAX_INDIRECT_BUFS) {
- unmap_sg_list(num_mapped, dev, &indirect->desc_list[0]);
- return;
- }
-
- unmap_sg_list(num_mapped, dev, evt_struct->ext_list);
- }
+ if (evt_struct->cmnd)
+ scsi_dma_unmap(evt_struct->cmnd);
}
static int map_sg_list(struct scsi_cmnd *cmd, int nseg,
--
1.7.0.1
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-13/kernel.spec,v
retrieving revision 1.2015
retrieving revision 1.2016
diff -u -p -r1.2015 -r1.2016
--- kernel.spec 3 May 2010 21:16:31 -0000 1.2015
+++ kernel.spec 4 May 2010 14:01:08 -0000 1.2016
@@ -839,6 +839,8 @@ Patch12800: revert-ath9k_-fix-lockdep-wa
# ath9k: reorder ieee80211_free_hw behind ath9k_uninit_hw to avoid oops
Patch12810: ath9k-reorder-ieee80211_free_hw-behind-ath9k_uninit_.patch
+Patch12820: ibmvscsi-fix-DMA-API-misuse.patch
+
%endif
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
@@ -1528,6 +1530,8 @@ ApplyPatch revert-ath9k_-fix-lockdep-war
# ath9k: reorder ieee80211_free_hw behind ath9k_uninit_hw to avoid oops
ApplyPatch ath9k-reorder-ieee80211_free_hw-behind-ath9k_uninit_.patch
+ApplyPatch ibmvscsi-fix-DMA-API-misuse.patch
+
# END OF PATCH APPLICATIONS
%endif
@@ -2177,6 +2181,9 @@ fi
# and build.
%changelog
+* Tue May 4 2010 Kyle McMartin <kyle at redhat.com> 2.6.33.3-80
+- ibmvscsi-fix-DMA-API-misuse.patch (#579454)
+
* Mon May 3 2010 Kyle McMartin <kyle at redhat.com> 2.6.33.3-79
- disable aesni. (#571577)
More information about the scm-commits
mailing list