Re: [PATCH 2/4] net: use numa_node in net_devcice->dev instead ofparent

From: Stefan Richter
Date: Wed Jul 04 2007 - 07:04:35 EST


David Miller wrote:
> From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
> Date: Wed, 4 Jul 2007 09:51:20 +0100
>
>> On Tue, Jul 03, 2007 at 05:30:51PM -0700, Yinghai Lu wrote:
...
>> > struct sk_buff *__netdev_alloc_skb(struct net_device *dev,
>> > unsigned int length, gfp_t gfp_mask)
>> > {
>> > - int node = dev->dev.parent ? dev_to_node(dev->dev.parent) : -1;
>> > + int node = dev_to_node(&dev->dev);
>>
>> This looks wrong to me unless the device model has once again changed
>> silently. When I wrote this code &dev->dev was a device allocated
>> as part of the netdevice and the parent is the pci (or whatever) device
>> that has the node information.
>
> Correct, this change is completely bogus.

I've got a question from a network driver writer's perspective: In
drivers which sit on top of a midlayer/ multi-protocol infrastructure,
should dev->dev.parent be the lowlevel's pci_dev.dev or the midlayer's
whatever_abstracted_dev.dev?

(Example: eth1394 network driver sits on top of ieee1394 = FireWire
midlayer, this sits on top of ohci1394 = PCI driver for FireWire
controllers.)

I guess it should be the lowlevel's pci_dev.dev, unless the midlayer
cares to set
set_dev_node(&midlayer_dev.dev, dev_to_node(midlayer_dev.dev.parent));

And either way, for full effect of NUMA awareness in the highlevel
network driver, the midlayer should be NUMA aware too...
--
Stefan Richter
-=====-=-=== -=== --=--
http://arcgraph.de/sr/
-
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/