On Mon, Aug 13, 2007 at 03:54:34PM -0700, Christoph Lameter wrote:
> On Tue, 14 Aug 2007, Andi Kleen wrote:
> 
> > On Mon, Aug 13, 2007 at 03:38:10PM -0700, Christoph Lameter wrote:
> > > I just did a grep for GFP_DMA and I still see a large list of GFP_DMA 
> > > kmallocs???
> > 
> > I converted all of those that applied to x86.
> 
> Converted to what?

Hmm, do you actually read my emails? I spelled that out at least two
times now. It's converted to a new dma page allocator that specifies
an address mask.

> 
> drivers/net/tokenring/3c359.c:        xl_priv->xl_tx_ring = 
> kmalloc((sizeof(struct xl_tx_desc) * XL_TX_RING_SIZE) + 7, GFP_DMA | 
> GFP_KERNEL) ; 
> drivers/net/tokenring/3c359.c:        xl_priv->xl_rx_ring = 
> kmalloc((sizeof(struct xl_rx_desc) * XL_RX_RING_SIZE) +7, GFP_DMA | 
> GFP_KERNEL) ; 
> 
> Tokenring not supported on x86?

It can be easily converted to a page allocation.

The only tricky part were skbs in a few drivers, but luckily they are only
needed for bouncing which can be done without a skb too. For RX it adds
one copy, but we can live with that because they're only slow devices.

Right now it is a little inefficient because it's one page per packet
even though two would fit, but these devices have all tiny RX rings
so it's not that big a waste.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to