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>
                 */
                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 == '-')
                /*
                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);