summaryrefslogtreecommitdiffstats
path: root/mm/slub.c
diff options
context:
space:
mode:
authorChris J Arges <chris.j.arges@canonical.com>2015-04-14 15:44:25 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-14 16:48:59 -0700
commit08303a73c62a1cc83c613fa1965f5127ba030c46 (patch)
tree688215f0951470e1dbdfbae5913673fe905627af /mm/slub.c
parentef2a5153b4d2c48c05b9280491cb5592a46df385 (diff)
downloadlinux-08303a73c62a1cc83c613fa1965f5127ba030c46.tar.gz
linux-08303a73c62a1cc83c613fa1965f5127ba030c46.tar.bz2
linux-08303a73c62a1cc83c613fa1965f5127ba030c46.zip
mm/slub.c: parse slub_debug O option in switch statement
By moving the O option detection into the switch statement, we allow this parameter to be combined with other options correctly. Previously options like slub_debug=OFZ would only detect the 'o' and use DEBUG_DEFAULT_FLAGS to fill in the rest of the flags. Signed-off-by: Chris J Arges <chris.j.arges@canonical.com> Cc: Christoph Lameter <cl@linux.com> Cc: Pekka Enberg <penberg@kernel.org> Acked-by: David Rientjes <rientjes@google.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/slub.c')
-rw-r--r--mm/slub.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/mm/slub.c b/mm/slub.c
index 82c473780c91..d01f9126fcf2 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -1137,15 +1137,6 @@ static int __init setup_slub_debug(char *str)
*/
goto check_slabs;
- if (tolower(*str) == 'o') {
- /*
- * Avoid enabling debugging on caches if its minimum order
- * would increase as a result.
- */
- disable_higher_order_debug = 1;
- goto out;
- }
-
slub_debug = 0;
if (*str == '-')
/*
@@ -1176,6 +1167,13 @@ static int __init setup_slub_debug(char *str)
case 'a':
slub_debug |= SLAB_FAILSLAB;
break;
+ case 'o':
+ /*
+ * Avoid enabling debugging on caches if its minimum
+ * order would increase as a result.
+ */
+ disable_higher_order_debug = 1;
+ break;
default:
pr_err("slub_debug option '%c' unknown. skipped\n",
*str);