[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <468B7EAA.2040903@s5r6.in-berlin.de>
Date: Wed, 04 Jul 2007 13:04:10 +0200
From: Stefan Richter <stefanr@...6.in-berlin.de>
To: David Miller <davem@...emloft.net>
CC: hch@...radead.org, Yinghai.Lu@....COM,
shemminger@...ux-foundation.org, akpm@...ux-foundation.org,
ak@...e.de, greg@...ah.com, linux-kernel@...r.kernel.org,
netdev@...r.kernel.org
Subject: Re: [PATCH 2/4] net: use numa_node in net_devcice->dev instead of
parent
David Miller wrote:
> From: Christoph Hellwig <hch@...radead.org>
> 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 netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists