Commit 4fe82cf3 authored by Fushuai Wang's avatar Fushuai Wang Committed by Peter Zijlstra
Browse files

sched/debug: Convert copy_from_user() + kstrtouint() to kstrtouint_from_user()



Using kstrtouint_from_user() instead of copy_from_user() + kstrtouint()
makes the code simpler and less error-prone.

Suggested-by: default avatarYury Norov <ynorov@nvidia.com>
Signed-off-by: default avatarFushuai Wang <wangfushuai@baidu.com>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: default avatarYury Norov <ynorov@nvidia.com>
Link: https://patch.msgid.link/20260117145615.53455-2-fushuai.wang@linux.dev
parent 5d86d542
Loading
Loading
Loading
Loading
+4 −10
Original line number Diff line number Diff line
@@ -172,18 +172,12 @@ static const struct file_operations sched_feat_fops = {
static ssize_t sched_scaling_write(struct file *filp, const char __user *ubuf,
				   size_t cnt, loff_t *ppos)
{
	char buf[16];
	unsigned int scaling;
	int ret;

	if (cnt > 15)
		cnt = 15;

	if (copy_from_user(&buf, ubuf, cnt))
		return -EFAULT;
	buf[cnt] = '\0';

	if (kstrtouint(buf, 10, &scaling))
		return -EINVAL;
	ret = kstrtouint_from_user(ubuf, cnt, 10, &scaling);
	if (ret)
		return ret;

	if (scaling >= SCHED_TUNABLESCALING_END)
		return -EINVAL;