[PATCH] tvec_bases too large for per-cpu data
authorJan Beulich <jbeulich@novell.com>
Fri, 24 Mar 2006 11:15:54 +0000 (03:15 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 24 Mar 2006 15:33:21 +0000 (07:33 -0800)
commita4a6198b80cf82eb8160603c98da218d1bd5e104
tree8c59e9088840b6b95e46c00ddda4fd7a134154c2
parentc98d8cfbc600af88e9e6cffc84dd342280445760
[PATCH] tvec_bases too large for per-cpu data

With internal Xen-enabled kernels we see the kernel's static per-cpu data
area exceed the limit of 32k on x86-64, and even native x86-64 kernels get
fairly close to that limit.  I generally question whether it is reasonable
to have data structures several kb in size allocated as per-cpu data when
the space there is rather limited.

The biggest arch-independent consumer is tvec_bases (over 4k on 32-bit
archs, over 8k on 64-bit ones), which now gets converted to use dynamically
allocated memory instead.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
kernel/timer.c