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.