Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 68ae4b2b authored by Josh Poimboeuf's avatar Josh Poimboeuf Committed by Jiri Kosina
Browse files

livepatch: use kstrtobool() in enabled_store()



The sysfs enabled value is a boolean, so kstrtobool() is a better fit
for parsing the input string since it does the range checking for us.

Suggested-by: default avatarPetr Mladek <pmladek@suse.com>
Signed-off-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
Acked-by: default avatarMiroslav Benes <mbenes@suse.cz>
Reviewed-by: default avatarPetr Mladek <pmladek@suse.com>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
parent c349cdca
Loading
Loading
Loading
Loading
+5 −8
Original line number Diff line number Diff line
@@ -408,26 +408,23 @@ static ssize_t enabled_store(struct kobject *kobj, struct kobj_attribute *attr,
{
	struct klp_patch *patch;
	int ret;
	unsigned long val;
	bool enabled;

	ret = kstrtoul(buf, 10, &val);
	ret = kstrtobool(buf, &enabled);
	if (ret)
		return -EINVAL;

	if (val > 1)
		return -EINVAL;
		return ret;

	patch = container_of(kobj, struct klp_patch, kobj);

	mutex_lock(&klp_mutex);

	if (patch->enabled == val) {
	if (patch->enabled == enabled) {
		/* already in requested state */
		ret = -EINVAL;
		goto err;
	}

	if (val) {
	if (enabled) {
		ret = __klp_enable_patch(patch);
		if (ret)
			goto err;