Messages in this thread | | | Date | Wed, 10 Mar 2010 15:05:47 -0800 (PST) | From | David Rientjes <> | Subject | Re: [patch] numa: fix BUILD_BUG_ON for node_read_distance |
| |
On Wed, 10 Mar 2010, Greg KH wrote:
> > node_read_distance() has a BUILD_BUG_ON() to prevent buffer overruns when > > the number of nodes printed will exceed the buffer length. > > > > Each node only needs four chars: three for distance (maximum distance is > > 255) and one for a seperating space or a trailing newline. > > Is this causing a problem as-is today that we need to resolve for > 2.6.34? Or is this 2.6.35 material? >
It's not needed at least for x86 for 2.6.34 since the max CONFIG_NODES_SHIFT is 9. I don't know about other architectures with different ranges or page sizes.
I'm going to push a change to the x86 maintainers to increase that max CONFIG_NODES_SHIFT to 10 hopefully for 2.6.35, that's where we run into this error.
> Who chose this original number, and why is it off by 1/2? >
It's earlier than the git history, but there's no reason to divide PAGE_SIZE in half. We've been running machines with this patch for well over a year and /sys/devices/system/node/nodeN/distance works just fine with 1K nodes.
| |