Re: [discuss] Re: x86_64: 2.6.14-rc4 swiotlb broken

From: Ravikiran G Thirumalai
Date: Tue Oct 18 2005 - 17:47:46 EST


On Tue, Oct 18, 2005 at 04:04:00PM -0600, Alex Williamson wrote:
> On Tue, 2005-10-18 at 14:53 -0700, Ravikiran G Thirumalai wrote:
> > On Tue, Oct 18, 2005 at 03:28:27PM -0600, Alex Williamson wrote:
> > > So, it looks like we're iterating over the nodes, but
> > > alloc_bootmem_node() isn't even guaranteed to try to get memory from the
> > > low memory on that node.
> >
> > Thanks Alex. 2.6.14-rc4-mm1 already has the
> > guarantee-dma-area-for-alloc_bootmem_low.patch by Yasunori-san. So it is
> > safer to confirm results on latest 2.6.14 stock.
>
> Ok. I'll need to build a stock tree then.
>
> > Could it also be that Node 2 is offline when swiotlb is allocated?
>
> Nope. Note that Node2 is iterated in the for_each_online_node, my
> printk is within the body of the loop. Also, the allocation it did get
> is still from Node2. My understanding is that goal for
> alloc_bootmem_node is MAX_DMA_ADDRESS. On ia64, that defaults to 4GB.

Ahhh... and it is 16MB on x86_64. alloc_bootmem_node will never work here
for ia64 then, However, alloc_bootmem_low_pages_node will work, but then it will
dig into 16MB DMA area of x86_64.... arrrrgh...

The first cleanup post 2.6.14 should be to seperate swiotlb for ia64 and
x86_64 IMHO.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/