mm/memcontrol: use kstrtobool for swapaccount param parsing
authorLiu Shixin <liushixin2@huawei.com>
Tue, 13 Sep 2022 07:13:58 +0000 (15:13 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 3 Oct 2022 21:03:14 +0000 (14:03 -0700)
Use kstrtobool which is more powerful to handle all kinds of parameters
like 'Yy1Nn0' or [oO][NnFf] for "on" and "off".

Link: https://lkml.kernel.org/r/20220913071358.1812206-1-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Cc: Muchun Song <songmuchun@bytedance.com>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Shakeel Butt <shakeelb@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/memcontrol.c

index 1f204a26205434056bae4e102baa342aed2503fb..ac6440daf2086734edda7c9ede37d9ebc18a6c3d 100644 (file)
@@ -7507,10 +7507,10 @@ bool mem_cgroup_swap_full(struct folio *folio)
 
 static int __init setup_swap_account(char *s)
 {
-       if (!strcmp(s, "1"))
-               cgroup_memory_noswap = false;
-       else if (!strcmp(s, "0"))
-               cgroup_memory_noswap = true;
+       bool res;
+
+       if (!kstrtobool(s, &res))
+               cgroup_memory_noswap = !res;
        return 1;
 }
 __setup("swapaccount=", setup_swap_account);