[ofa-general] Re: [PATCH 1/11] IB/ipoib: high dma support

Michael S. Tsirkin mst at dev.mellanox.co.il
Tue Sep 25 07:53:15 PDT 2007


> > > static u64 ipath_dma_map_page(struct ib_device *dev,
> > > 			      struct page *page,
> > > 			      unsigned long offset,
> > > 			      size_t size,
> > > 			      enum dma_data_direction direction)
> > > {
> > > 	u64 addr;
> > > 
> > > 	BUG_ON(!valid_dma_direction(direction));
> > > 
> > > 	if (offset + size > PAGE_SIZE) {
> > > 		addr = BAD_DMA_ADDRESS;
> > > 		goto done;
> > > 	}
> > > 
> > > 	addr = (u64) page_address(page);
> > > 	if (addr)
> > > 		addr += offset;
> > > 	/* TODO: handle highmem pages */
> > > 
> > > done:
> > > 	return addr;
> > > }
> > 
> 
> I got the impression that all supported IB devices support dma-ing
> to/from memory > 4GB. Perhaps other vendors can comment.

I think it's true. The only reason ipath doesn't support this at the moment,
is because the maintainer doesn't seem to care about
supporting 32 bit systems.

-- 
MST



More information about the general mailing list