aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2009-04-07 02:51:10 +0000
committerFelix Fietkau <nbd@openwrt.org>2009-04-07 02:51:10 +0000
commit9fa8380c9ea965fcb08ade60ff55cbafd97a48d3 (patch)
treed7e2834f620f17066f1a8951e1d8f84c9a32cd1e
parentcf152cff392d393fb7516cef2bf7003d4d3a9c17 (diff)
downloadupstream-9fa8380c9ea965fcb08ade60ff55cbafd97a48d3.tar.gz
upstream-9fa8380c9ea965fcb08ade60ff55cbafd97a48d3.tar.bz2
upstream-9fa8380c9ea965fcb08ade60ff55cbafd97a48d3.zip
kernel: tweak the maximum allocation size to improve memory allocator performance
SVN-Revision: 15130
-rw-r--r--target/linux/generic-2.6/patches-2.6.28/203-slab_maxsize.patch13
1 files changed, 13 insertions, 0 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.28/203-slab_maxsize.patch b/target/linux/generic-2.6/patches-2.6.28/203-slab_maxsize.patch
new file mode 100644
index 0000000000..25567f8488
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.28/203-slab_maxsize.patch
@@ -0,0 +1,13 @@
+--- a/include/linux/slab.h
++++ b/include/linux/slab.h
+@@ -115,8 +115,8 @@ int kmem_ptr_validate(struct kmem_cache
+ * to do various tricks to work around compiler limitations in order to
+ * ensure proper constant folding.
+ */
+-#define KMALLOC_SHIFT_HIGH ((MAX_ORDER + PAGE_SHIFT - 1) <= 25 ? \
+- (MAX_ORDER + PAGE_SHIFT - 1) : 25)
++#define KMALLOC_SHIFT_HIGH ((MAX_ORDER + PAGE_SHIFT - 1) <= 17 ? \
++ (MAX_ORDER + PAGE_SHIFT - 1) : 17)
+
+ #define KMALLOC_MAX_SIZE (1UL << KMALLOC_SHIFT_HIGH)
+ #define KMALLOC_MAX_ORDER (KMALLOC_SHIFT_HIGH - PAGE_SHIFT)