Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[patch] x86: increase CONFIG_NODES_SHIFT max to 10

20 views
Skip to first unread message

David Rientjes

unread,
Mar 10, 2010, 6:50:02 PM3/10/10
to
Some larger systems require more than 512 nodes, so increase the maximum
CONFIG_NODES_SHIFT to 10 for a new max of 1024 nodes.

This was tested with numa=fake=64M on systems with more than 64GB of RAM.
A total of 1022 nodes were initialized.

Successfully builds with no additional warnings on x86_64 allyesconfig.

Signed-off-by: David Rientjes <rien...@google.com>
---
Greg KH has queued up numa-fix-BUILD_BUG_ON-for-node_read_distance.patch
for 2.6.35 to fix the build error when CONFIG_NODES_SHIFT is set to 10.
See http://lkml.org/lkml/2010/3/10/390

arch/x86/Kconfig | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1213,8 +1213,8 @@ config NUMA_EMU

config NODES_SHIFT
int "Maximum NUMA Nodes (as a power of 2)" if !MAXSMP
- range 1 9
- default "9" if MAXSMP
+ range 1 10
+ default "10" if MAXSMP
default "6" if X86_64
default "4" if X86_NUMAQ
default "3"
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Ingo Molnar

unread,
Mar 11, 2010, 8:30:03 AM3/11/10
to

* David Rientjes <rien...@google.com> wrote:

> Some larger systems require more than 512 nodes, so increase the maximum
> CONFIG_NODES_SHIFT to 10 for a new max of 1024 nodes.
>
> This was tested with numa=fake=64M on systems with more than 64GB of RAM. A
> total of 1022 nodes were initialized.
>
> Successfully builds with no additional warnings on x86_64 allyesconfig.

Not so here:

drivers/base/node.c:169: error: negative width in bit-field ?<anonymous>?

> Greg KH has queued up numa-fix-BUILD_BUG_ON-for-node_read_distance.patch
> for 2.6.35 to fix the build error when CONFIG_NODES_SHIFT is set to 10.
> See http://lkml.org/lkml/2010/3/10/390

erm. Alas I cannot merge it in the x86 tree without that fix being upstream.
Why for v2.6.35 - shouldnt that be v2.6.34?

Ingo

Greg KH

unread,
Mar 11, 2010, 9:10:02 AM3/11/10
to
On Thu, Mar 11, 2010 at 02:23:54PM +0100, Ingo Molnar wrote:
>
> * David Rientjes <rien...@google.com> wrote:
>
> > Some larger systems require more than 512 nodes, so increase the maximum
> > CONFIG_NODES_SHIFT to 10 for a new max of 1024 nodes.
> >
> > This was tested with numa=fake=64M on systems with more than 64GB of RAM. A
> > total of 1022 nodes were initialized.
> >
> > Successfully builds with no additional warnings on x86_64 allyesconfig.
>
> Not so here:
>
> drivers/base/node.c:169: error: negative width in bit-field ?<anonymous>?
>
> > Greg KH has queued up numa-fix-BUILD_BUG_ON-for-node_read_distance.patch
> > for 2.6.35 to fix the build error when CONFIG_NODES_SHIFT is set to 10.
> > See http://lkml.org/lkml/2010/3/10/390

Well, it will be a few days before I queue it up...

> erm. Alas I cannot merge it in the x86 tree without that fix being upstream.
> Why for v2.6.35 - shouldnt that be v2.6.34?

If it needs to go in before .35, or it should go through Ingo's trees, I
have no objection.

thanks,

greg k-h

Ingo Molnar

unread,
Mar 11, 2010, 9:20:01 AM3/11/10
to

* Greg KH <gre...@suse.de> wrote:

> > erm. Alas I cannot merge it in the x86 tree without that fix being
> > upstream. Why for v2.6.35 - shouldnt that be v2.6.34?
>
> If it needs to go in before .35, or it should go through Ingo's trees, I
> have no objection.

It does not 'need' to be in .34 but if the fix is trivial enough then you
could give it a try?

Ingo

Greg KH

unread,
Mar 11, 2010, 1:00:02 PM3/11/10
to
On Thu, Mar 11, 2010 at 03:15:33PM +0100, Ingo Molnar wrote:
>
> * Greg KH <gre...@suse.de> wrote:
>
> > > erm. Alas I cannot merge it in the x86 tree without that fix being
> > > upstream. Why for v2.6.35 - shouldnt that be v2.6.34?
> >
> > If it needs to go in before .35, or it should go through Ingo's trees, I
> > have no objection.
>
> It does not 'need' to be in .34 but if the fix is trivial enough then you
> could give it a try?

The fix is trivial, I'll queue it up.

thanks,

greg k-h

Ingo Molnar

unread,
Mar 11, 2010, 1:30:02 PM3/11/10
to

* Greg KH <gre...@suse.de> wrote:

> On Thu, Mar 11, 2010 at 03:15:33PM +0100, Ingo Molnar wrote:
> >
> > * Greg KH <gre...@suse.de> wrote:
> >
> > > > erm. Alas I cannot merge it in the x86 tree without that fix being
> > > > upstream. Why for v2.6.35 - shouldnt that be v2.6.34?
> > >
> > > If it needs to go in before .35, or it should go through Ingo's trees, I
> > > have no objection.
> >
> > It does not 'need' to be in .34 but if the fix is trivial enough then you
> > could give it a try?
>
> The fix is trivial, I'll queue it up.

Thanks Greg!

Ingo

David Rientjes

unread,
Mar 25, 2010, 6:40:03 PM3/25/10
to
Some larger systems require more than 512 nodes, so increase the maximum
CONFIG_NODES_SHIFT to 10 for a new max of 1024 nodes.

This was tested with numa=fake=64M on systems with more than 64GB of RAM.
A total of 1022 nodes were initialized.

Successfully builds with no additional warnings on x86_64 allyesconfig.

Signed-off-by: David Rientjes <rien...@google.com>
---

The BUILD_BUG_ON() in drivers/base/node.c has been fixed in Linus' -git
(see 12ee3c0), so CONFIG_NODES_SHIFT of 10 no longer fails to compile for
x86_64 allyesconfig.

tip-bot for David Rientjes

unread,
Apr 2, 2010, 3:10:02 PM4/2/10
to
Commit-ID: 51591e31dcb3716f03f962e26ec36a029aa46340
Gitweb: http://git.kernel.org/tip/51591e31dcb3716f03f962e26ec36a029aa46340
Author: David Rientjes <rien...@google.com>
AuthorDate: Thu, 25 Mar 2010 15:39:27 -0700
Committer: Ingo Molnar <mi...@elte.hu>
CommitDate: Fri, 2 Apr 2010 19:09:31 +0200

x86: Increase CONFIG_NODES_SHIFT max to 10

Some larger systems require more than 512 nodes, so increase the
maximum CONFIG_NODES_SHIFT to 10 for a new max of 1024 nodes.

This was tested with numa=fake=64M on systems with more than
64GB of RAM. A total of 1022 nodes were initialized.

Successfully builds with no additional warnings on x86_64
allyesconfig.

( No effect on any existing config. Newly enabled CONFIG_MAXSMP=y
will see the new default. )

Signed-off-by: David Rientjes <rien...@google.com>
LKML-Reference: <alpine.DEB.2.00.1...@chino.kir.corp.google.com>
Signed-off-by: Ingo Molnar <mi...@elte.hu>
---


arch/x86/Kconfig | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 0eacb1f..9458685 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1216,8 +1216,8 @@ config NUMA_EMU

0 new messages