On Sun, 2008-11-16 at 00:11 +0100, Andi Kleen wrote: > +static struct Scsi_Host *buslogic_host_alloc(gfp_t gfp) > +{ > + struct BusLogic_HostAdapter *board; > + struct Scsi_Host *shost; > + > + > + shost = scsi_host_alloc(&Bus_Logic_template, sizeof(struct host_ptr)); > + if (!shost) > + return NULL; > + > + board = dma_alloc_coherent(NULL, sizeof(struct BusLogic_HostAdapter), > + &bl_shost_dma(shost), GFP_KERNEL); > + if (!board) { > + scsi_host_put(shost); > + return NULL; > + } What makes you think that BusLogic_HostAdapter has to be in coherent memory? You can tell from your own patch that nothing ever uses its DMA address, so the card never actually DMAs data to or from this area. James -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html