Re: pcibus_to_node value when no pxm info is present for the pci bus

From: Ravikiran G Thirumalai
Date: Thu Dec 08 2005 - 14:34:02 EST


On Thu, Dec 08, 2005 at 11:05:24AM -0800, Christoph Lameter wrote:
> On Wed, 7 Dec 2005, Ravikiran G Thirumalai wrote:
>
> > Most of the arches seem to return -1 for pcibus_to_node if there is no pxm
> > kind of proximity information for the pci busses. Arch specific code on
> > those arches check if nodeid >= 0 before using the nodeid for kmalloc_node
> > etc. But some code paths in x86_64/i386 does not doe this --
> > x86_64/dma_alloc_pages() and e1000 node local descriptor (I am to blame for
> > the second one). Also, pcibus_to_node seems to be 0 when there is no pxm
> > info available.
>
> kmalloc_node falls back to kmalloc for node == -1. So there does not need
> to be a check.

Ah! yes,

>
> > The question is, what should be the default pcibus_to_node if there is no
> > pxm info? Answer seems like -1 -- in which case dma_alloc_pages and e1000
> > driver has to be fixed.
>
> Why would they have to be fixed?

alloc_pages_node (used by dma_alloc_pages) does not seem to do the check
though. I guess alloc_pages_node needs to be fixed then.

Thanks,
Kiran
-
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/