[openib-general] [PATCH v2 1/7] IB/core - Add DMA mapping functions to allow device drivers to interpose
Or Gerlitz
ogerlitz at voltaire.com
Wed Dec 6 00:03:40 PST 2006
Ralph Campbell wrote:
> On Tue, 2006-12-05 at 23:09 +0200, Or Gerlitz wrote:
>> The most notable miss to me is dma_alloc/free_coherent, please note
>> that an IB consumer can call dma_alloc_coherent and place the resulted
>> dma_addr_t within an SGE provided to ibv_post_send/recv, see the RDS
>> code doing the allocation at ib_cm.c :: rds_ib_setup_qp and the direct
>> usage of the dma_addr_t at ib_recv :: rds_ib_recv_init_ring under
>> under http://oss.oracle.com/projects/rds/src/trunk/linux/net/rds
>
> This looks like a very different version of RDS from what was
> in SVN a month ago. The SVN version didn't call alloc_dma_coherent().
Two comments: a) the SVN kernel IB code is not something you should look
on, its unmaintained b) the SVN RDS code is the 2nd generation RDS code
and is a dead one, RDS is now developed within Oracle Linux group and
the code is what found under the oss.oracle.com pointer above.
>> Also I see in struct dma_mapping_ops also something called
>> dma_map_simple not sure what it does and who can use it.
> I don't see anything with "simple" in the name.
> There is one call to dma_map_single() in the inline function
> for ib_dma_map_single() if the ib_device.dma_ops is NULL.
I was looking in include/asm-x86_64/dma-mapping.h and there was this
map_simple prototype... anyway forget about it.
Or.
More information about the general
mailing list