aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJagdish Gediya <[email protected]>2022-05-12 20:22:59 -0700
committerAndrew Morton <[email protected]>2022-05-13 07:20:13 -0700
commit717aeab42943efa7cfa876b3b687c6ff36eae867 (patch)
tree5d88d91f4aa99edd80ef41a4de24b3e39a86a65d
parent0d6ea3ac94ca77c5273b064524ac5079312052a0 (diff)
mm: convert sysfs input to bool using kstrtobool()
Sysfs input conversion to corrosponding bool value e.g. "false" or "0" to false, "true" or "1" to true are currently handled through strncmp at multiple places. Use kstrtobool() to convert sysfs input to bool value. [[email protected]: propagate kstrtobool() return value, per Andy] Link: https://lkml.kernel.org/r/[email protected] Signed-off-by: Jagdish Gediya <[email protected]> Reviewed-by: Matthew Wilcox (Oracle) <[email protected]> Reviewed-by: Andy Shevchenko <[email protected]> Cc: Alexey Dobriyan <[email protected]> Cc: Dave Hansen <[email protected]> Cc: "Huang, Ying" <[email protected]> Cc: Jonathan Cameron <[email protected]> Cc: Petr Mladek <[email protected]> Cc: Richard Fitzgerald <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
-rw-r--r--mm/migrate.c11
-rw-r--r--mm/swap_state.c11
2 files changed, 10 insertions, 12 deletions
diff --git a/mm/migrate.c b/mm/migrate.c
index b2678279eb43..ab46ad93af9f 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -2523,12 +2523,11 @@ static ssize_t numa_demotion_enabled_store(struct kobject *kobj,
struct kobj_attribute *attr,
const char *buf, size_t count)
{
- if (!strncmp(buf, "true", 4) || !strncmp(buf, "1", 1))
- numa_demotion_enabled = true;
- else if (!strncmp(buf, "false", 5) || !strncmp(buf, "0", 1))
- numa_demotion_enabled = false;
- else
- return -EINVAL;
+ ssize_t ret;
+
+ ret = kstrtobool(buf, &numa_demotion_enabled);
+ if (ret)
+ return ret;
return count;
}
diff --git a/mm/swap_state.c b/mm/swap_state.c
index d41746a572a2..27c4e28f795f 100644
--- a/mm/swap_state.c
+++ b/mm/swap_state.c
@@ -874,12 +874,11 @@ static ssize_t vma_ra_enabled_store(struct kobject *kobj,
struct kobj_attribute *attr,
const char *buf, size_t count)
{
- if (!strncmp(buf, "true", 4) || !strncmp(buf, "1", 1))
- enable_vma_readahead = true;
- else if (!strncmp(buf, "false", 5) || !strncmp(buf, "0", 1))
- enable_vma_readahead = false;
- else
- return -EINVAL;
+ ssize_t ret;
+
+ ret = kstrtobool(buf, &enable_vma_readahead);
+ if (ret)
+ return ret;
return count;
}