On Thu, 31 May 2007 08:35:13 -0400,
Jeff Garzik <jeff@garzik.org> wrote:
OK, so here's an alternative patch:
scsi: Don't build scsi_dma_{map,unmap} for !HAS_DMA
Use #ifdef CONFIG_HAS_DMA for the two dma-dependent functions.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
---
drivers/scsi/scsi_lib.c | 2 ++
include/scsi/scsi_cmnd.h | 2 ++
2 files changed, 4 insertions(+)
--- linux-2.6.orig/drivers/scsi/scsi_lib.c
+++ linux-2.6/drivers/scsi/scsi_lib.c
@@ -2291,6 +2291,7 @@ void scsi_kunmap_atomic_sg(void *virt)
}
EXPORT_SYMBOL(scsi_kunmap_atomic_sg);
+#ifdef CONFIG_HAS_DMA
/**
* scsi_dma_map - perform DMA mapping against command's sg lists
* @cmd: scsi command
@@ -2328,3 +2329,4 @@ void scsi_dma_unmap(struct scsi_cmnd *cm
}
}
EXPORT_SYMBOL(scsi_dma_unmap);
+#endif
--- linux-2.6.orig/include/scsi/scsi_cmnd.h
+++ linux-2.6/include/scsi/scsi_cmnd.h
@@ -135,8 +135,10 @@ extern void scsi_kunmap_atomic_sg(void *
extern struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd *, gfp_t);
extern void scsi_free_sgtable(struct scatterlist *, int);
+#ifdef CONFIG_HAS_DMA
extern int scsi_dma_map(struct scsi_cmnd *cmd);
extern void scsi_dma_unmap(struct scsi_cmnd *cmd);
+#endif
#define scsi_sg_count(cmd) ((cmd)->use_sg)
#define scsi_sglist(cmd) ((struct scatterlist *)(cmd)->request_buffer)
-