Messages in this thread | ![/](/images/icornerl.gif) | | Date | Thu, 2 Mar 2006 17:09:15 +0000 | From | Christoph Hellwig <> | Subject | Re: Question: how to map SCSI data DMA address to virtual address? |
| |
On Thu, Mar 02, 2006 at 09:53:06AM -0700, Ju, Seokmann wrote: > Hi, > > In the 'scsi_cmnd' structure, there are two entries holding address > information for data to be transferred. One is 'request_buffer' and the > other one is 'buffer'. > In case of 'use_sg' is non-zero, those entries indicates the address of > the scatter-gather table. > > Is there way to get virtual address (so that the data could be accessed > by the driver) of the actual data in the case of 'use_sg' is non-zero?
For each sg list entry do something like:
buffer = kmap_atomic(sg->page, KM_USER0) + sg->offset; <access buffer> kunmap_atomic(buffer - sg->offset, KM_USER0); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |