All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20131213070351.GD8845@lge.com>

diff --git a/a/1.txt b/N1/1.txt
index ca0677e..a6d8d91 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -31,3 +31,36 @@ with pleasure.
 Thanks.
 
 --------8<---------------
+>From f6790b69b53c421645a4eaaeb45bd98e0a461136 Mon Sep 17 00:00:00 2001
+From: Joonsoo Kim <iamjoonsoo.kim@lge.com>
+Date: Thu, 29 Aug 2013 11:35:45 +0900
+Subject: [PATCH] slab: make more slab management structure off the slab
+
+Since the size of the freelist has shrunk significantly we have to
+adjust the heuristic for making the on/off slab placement decision.
+
+Consider a 128 byte sized slab. If on-slab is used, 31 objects can be
+in the slab. The size of the freelist for this case would be 31 bytes
+so that 97 bytes, that is, more than 75% of object size, are wasted.
+
+In a 64 byte sized slab case, no space is wasted if we use on-slab.
+So set off-slab determining constraint to 128 bytes.
+
+Acked-by: Christoph Lameter <cl@linux.com>
+Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
+
+diff --git a/mm/slab.c b/mm/slab.c
+index 7fab788..1a7f19d 100644
+--- a/mm/slab.c
++++ b/mm/slab.c
+@@ -2264,7 +2264,7 @@ __kmem_cache_create (struct kmem_cache *cachep, unsigned long flags)
+ 	 * it too early on. Always use on-slab management when
+ 	 * SLAB_NOLEAKTRACE to avoid recursive calls into kmemleak)
+ 	 */
+-	if ((size >= (PAGE_SIZE >> 3)) && !slab_early_init &&
++	if ((size >= (PAGE_SIZE >> 5)) && !slab_early_init &&
+ 	    !(flags & SLAB_NOLEAKTRACE))
+ 		/*
+ 		 * Size is large, assume best to place the slab management obj
+-- 
+1.7.9.5
diff --git a/a/content_digest b/N1/content_digest
index 5c97d70..8ba22fb 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -46,6 +46,39 @@
  "\n"
  "Thanks.\n"
  "\n"
- --------8<---------------
+ "--------8<---------------\n"
+ ">From f6790b69b53c421645a4eaaeb45bd98e0a461136 Mon Sep 17 00:00:00 2001\n"
+ "From: Joonsoo Kim <iamjoonsoo.kim@lge.com>\n"
+ "Date: Thu, 29 Aug 2013 11:35:45 +0900\n"
+ "Subject: [PATCH] slab: make more slab management structure off the slab\n"
+ "\n"
+ "Since the size of the freelist has shrunk significantly we have to\n"
+ "adjust the heuristic for making the on/off slab placement decision.\n"
+ "\n"
+ "Consider a 128 byte sized slab. If on-slab is used, 31 objects can be\n"
+ "in the slab. The size of the freelist for this case would be 31 bytes\n"
+ "so that 97 bytes, that is, more than 75% of object size, are wasted.\n"
+ "\n"
+ "In a 64 byte sized slab case, no space is wasted if we use on-slab.\n"
+ "So set off-slab determining constraint to 128 bytes.\n"
+ "\n"
+ "Acked-by: Christoph Lameter <cl@linux.com>\n"
+ "Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>\n"
+ "\n"
+ "diff --git a/mm/slab.c b/mm/slab.c\n"
+ "index 7fab788..1a7f19d 100644\n"
+ "--- a/mm/slab.c\n"
+ "+++ b/mm/slab.c\n"
+ "@@ -2264,7 +2264,7 @@ __kmem_cache_create (struct kmem_cache *cachep, unsigned long flags)\n"
+ " \t * it too early on. Always use on-slab management when\n"
+ " \t * SLAB_NOLEAKTRACE to avoid recursive calls into kmemleak)\n"
+ " \t */\n"
+ "-\tif ((size >= (PAGE_SIZE >> 3)) && !slab_early_init &&\n"
+ "+\tif ((size >= (PAGE_SIZE >> 5)) && !slab_early_init &&\n"
+ " \t    !(flags & SLAB_NOLEAKTRACE))\n"
+ " \t\t/*\n"
+ " \t\t * Size is large, assume best to place the slab management obj\n"
+ "-- \n"
+ 1.7.9.5
 
-0a353adfd37a6b4024053a7068b4e6d98f804013bbcf469a6c48b4f022507be6
+a87a8367e9379c3dae6de445a4fee7668fcc6dc1f5dfab164f94193d06698b27

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.