* [PATCH] - Increase max allowed kmalloc size for very large systems
@ 2005-09-14 16:29 ` Jack Steiner
0 siblings, 0 replies; 2+ messages in thread
From: Jack Steiner @ 2005-09-14 16:29 UTC (permalink / raw)
To: linux-mm; +Cc: linux-ia64
I'm in the process of changing IA64 to support (at least boot) with
up to 1024p. One of the issues is that kmalloc is being called to
allocate structures that exceed the sizes allowed in kmalloc_sizes.h.
Specifically, the workqueue code allocates a structure with
a size a few bytes + NR_CPUS * CACHE_LINE_SIZE (128 bytes on IA64). This
is over the limit allowed by kmalloc_sizes.h. Although workqueues
could be changed to eliminate this specific problem, I expect other places
will encounter the same limit.
For now, I'm proposing that kmalloc_sizes.h be modified to allow allocation of
larger structures if NR_CPUS exceeds 512. This makes the change a noop
on all current platforms.
Does anyone see any problems with this approach???
Signed-off-by: Jack Steiner <steiner@sgi.com>
Index: linux/include/linux/kmalloc_sizes.h
=================================--- linux.orig/include/linux/kmalloc_sizes.h 2005-09-12 10:40:20.749999533 -0500
+++ linux/include/linux/kmalloc_sizes.h 2005-09-14 10:47:04.479120684 -0500
@@ -19,8 +19,10 @@
CACHE(32768)
CACHE(65536)
CACHE(131072)
-#ifndef CONFIG_MMU
+#if (NR_CPUS > 512) || !defined(CONFIG_MMU)
CACHE(262144)
+#endif
+#ifndef CONFIG_MMU
CACHE(524288)
CACHE(1048576)
#ifdef CONFIG_LARGE_ALLOCS
--
Thanks
Jack Steiner (steiner@sgi.com) 651-683-5302
Principal Engineer SGI - Silicon Graphics, Inc.
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH] - Increase max allowed kmalloc size for very large systems
@ 2005-09-14 16:29 ` Jack Steiner
0 siblings, 0 replies; 2+ messages in thread
From: Jack Steiner @ 2005-09-14 16:29 UTC (permalink / raw)
To: linux-mm; +Cc: linux-ia64
I'm in the process of changing IA64 to support (at least boot) with
up to 1024p. One of the issues is that kmalloc is being called to
allocate structures that exceed the sizes allowed in kmalloc_sizes.h.
Specifically, the workqueue code allocates a structure with
a size a few bytes + NR_CPUS * CACHE_LINE_SIZE (128 bytes on IA64). This
is over the limit allowed by kmalloc_sizes.h. Although workqueues
could be changed to eliminate this specific problem, I expect other places
will encounter the same limit.
For now, I'm proposing that kmalloc_sizes.h be modified to allow allocation of
larger structures if NR_CPUS exceeds 512. This makes the change a noop
on all current platforms.
Does anyone see any problems with this approach???
Signed-off-by: Jack Steiner <steiner@sgi.com>
Index: linux/include/linux/kmalloc_sizes.h
===================================================================
--- linux.orig/include/linux/kmalloc_sizes.h 2005-09-12 10:40:20.749999533 -0500
+++ linux/include/linux/kmalloc_sizes.h 2005-09-14 10:47:04.479120684 -0500
@@ -19,8 +19,10 @@
CACHE(32768)
CACHE(65536)
CACHE(131072)
-#ifndef CONFIG_MMU
+#if (NR_CPUS > 512) || !defined(CONFIG_MMU)
CACHE(262144)
+#endif
+#ifndef CONFIG_MMU
CACHE(524288)
CACHE(1048576)
#ifdef CONFIG_LARGE_ALLOCS
--
Thanks
Jack Steiner (steiner@sgi.com) 651-683-5302
Principal Engineer SGI - Silicon Graphics, Inc.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2005-09-14 16:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-14 16:29 [PATCH] - Increase max allowed kmalloc size for very large systems Jack Steiner
2005-09-14 16:29 ` Jack Steiner
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.