* Re: [PATCH] x86/PCI: initialize PCI bus node numbers early [not found] ` <20090710140654.32132bcb@jbarnes-g45> @ 2009-07-14 7:41 ` Jesse Brandeburg 2009-07-14 15:47 ` Jesse Barnes 0 siblings, 1 reply; 2+ messages in thread From: Jesse Brandeburg @ 2009-07-14 7:41 UTC (permalink / raw) To: Jesse Barnes; +Cc: Yinghai Lu, linux-kernel, NetDEV list, ak, matthew On Fri, Jul 10, 2009 at 2:06 PM, Jesse Barnes<jbarnes@virtuousgeek.org> wrote: > From 2b51fba93f7b2dabf453a74923a9a217611ebc1a Mon Sep 17 00:00:00 2001 > From: Jesse Barnes <jbarnes@virtuousgeek.org> > Date: Fri, 10 Jul 2009 14:04:30 -0700 > Subject: [PATCH] x86/PCI: initialize PCI bus node numbers early > > The current mp_bus_to_node array is initialized only by AMD specific > code, since AMD platforms have registers that can be used for > determining mode numbers. On new Intel platforms it's necessary to > initialize this array as well though, otherwise all PCI node numbers > will be 0, when in fact they should be -1 (indicating that I/O isn't > tied to any particular node). > > So move the mp_bus_to_node code into the common PCI code, and > initialize it early with a default value of -1. This may be overridden > later by arch code (e.g. the AMD code). > > With this change, PCI consistent memory and other node specific > allocations (e.g. skbuff allocs) should occur on the "current" node. > If, for performance reasons, applications want to be bound to specific > nodes, they should open their devices only after being pinned to the > CPU where they'll run, for maximum locality. > > Acked-by: Yinghai Lu <yinghai@kernel.org> > Tested-by: Jesse Brandeburg <jesse.brandeburg@gmail.com> > Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> I can confirm this works, aside from the MSI-X interrupt migration instability (panics) that I believe are unrelated since they happen without this patch. I also see a pretty nice performance boost by running with this change on a 5520 motherboard, with an 82599 10GbE forwarding packets, esp with interrupt affinity set correctly. I'd like to see this applied if at all possible, I think it is really hampering I/O traffic performance due to limiting all network (among others) memory allocation to one of the two numa nodes. ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] x86/PCI: initialize PCI bus node numbers early 2009-07-14 7:41 ` [PATCH] x86/PCI: initialize PCI bus node numbers early Jesse Brandeburg @ 2009-07-14 15:47 ` Jesse Barnes 0 siblings, 0 replies; 2+ messages in thread From: Jesse Barnes @ 2009-07-14 15:47 UTC (permalink / raw) To: Jesse Brandeburg; +Cc: Yinghai Lu, linux-kernel, NetDEV list, ak, matthew On Tue, 14 Jul 2009 00:41:30 -0700 Jesse Brandeburg <jesse.brandeburg@gmail.com> wrote: > On Fri, Jul 10, 2009 at 2:06 PM, Jesse > Barnes<jbarnes@virtuousgeek.org> wrote: > > From 2b51fba93f7b2dabf453a74923a9a217611ebc1a Mon Sep 17 00:00:00 > > 2001 From: Jesse Barnes <jbarnes@virtuousgeek.org> > > Date: Fri, 10 Jul 2009 14:04:30 -0700 > > Subject: [PATCH] x86/PCI: initialize PCI bus node numbers early > > > > The current mp_bus_to_node array is initialized only by AMD specific > > code, since AMD platforms have registers that can be used for > > determining mode numbers. On new Intel platforms it's necessary to > > initialize this array as well though, otherwise all PCI node numbers > > will be 0, when in fact they should be -1 (indicating that I/O isn't > > tied to any particular node). > > > > So move the mp_bus_to_node code into the common PCI code, and > > initialize it early with a default value of -1. This may be > > overridden later by arch code (e.g. the AMD code). > > > > With this change, PCI consistent memory and other node specific > > allocations (e.g. skbuff allocs) should occur on the "current" node. > > If, for performance reasons, applications want to be bound to > > specific nodes, they should open their devices only after being > > pinned to the CPU where they'll run, for maximum locality. > > > > Acked-by: Yinghai Lu <yinghai@kernel.org> > > Tested-by: Jesse Brandeburg <jesse.brandeburg@gmail.com> > > Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> > > I can confirm this works, aside from the MSI-X interrupt migration > instability (panics) that I believe are unrelated since they happen > without this patch. > > I also see a pretty nice performance boost by running with this change > on a 5520 motherboard, with an 82599 10GbE forwarding packets, esp > with interrupt affinity set correctly. > > I'd like to see this applied if at all possible, I think it is really > hampering I/O traffic performance due to limiting all network (among > others) memory allocation to one of the two numa nodes. Ok, thanks for testing. I've pushed it to my linux-next branch. -- Jesse Barnes, Intel Open Source Technology Center ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-07-14 15:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20090710104419.0032be7b@jbarnes-g45>
[not found] ` <4A57A1FE.30609@kernel.org>
[not found] ` <20090710132249.1a032cfb@jbarnes-g45>
[not found] ` <20090710140654.32132bcb@jbarnes-g45>
2009-07-14 7:41 ` [PATCH] x86/PCI: initialize PCI bus node numbers early Jesse Brandeburg
2009-07-14 15:47 ` Jesse Barnes
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox