2022-12-05 10:13:29

by ye.xingchen

[permalink] [raw]
Subject: [PATCH linux-next] ksmbd: use sysfs_emit() to instead of scnprintf()

From: ye xingchen <[email protected]>

Follow the advice of the Documentation/filesystems/sysfs.rst and show()
should only use sysfs_emit() or sysfs_emit_at() when formatting the
value to be returned to user space.

Signed-off-by: ye xingchen <[email protected]>
---
fs/ksmbd/server.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/ksmbd/server.c b/fs/ksmbd/server.c
index a0d635304754..b0da15377709 100644
--- a/fs/ksmbd/server.c
+++ b/fs/ksmbd/server.c
@@ -433,7 +433,7 @@ static ssize_t stats_show(struct class *class, struct class_attribute *attr,
"shutdown"
};

- ssize_t sz = scnprintf(buf, PAGE_SIZE, "%d %s %d %lu\n", stats_version,
+ ssize_t sz = sysfs_emit(buf, "%d %s %d %lu\n", stats_version,
state[server_conf.state], server_conf.tcp_port,
server_conf.ipc_last_active / HZ);
return sz;
--
2.25.1


2022-12-06 14:24:25

by Namjae Jeon

[permalink] [raw]
Subject: Re: [PATCH linux-next] ksmbd: use sysfs_emit() to instead of scnprintf()

2022-12-05 18:03 GMT+09:00, [email protected] <[email protected]>:
> From: ye xingchen <[email protected]>
>
> Follow the advice of the Documentation/filesystems/sysfs.rst and show()
> should only use sysfs_emit() or sysfs_emit_at() when formatting the
> value to be returned to user space.
>
> Signed-off-by: ye xingchen <[email protected]>
> ---
> fs/ksmbd/server.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/ksmbd/server.c b/fs/ksmbd/server.c
> index a0d635304754..b0da15377709 100644
> --- a/fs/ksmbd/server.c
> +++ b/fs/ksmbd/server.c
> @@ -433,7 +433,7 @@ static ssize_t stats_show(struct class *class, struct
> class_attribute *attr,
> "shutdown"
> };
>
> - ssize_t sz = scnprintf(buf, PAGE_SIZE, "%d %s %d %lu\n", stats_version,
> + ssize_t sz = sysfs_emit(buf, "%d %s %d %lu\n", stats_version,
> state[server_conf.state], server_conf.tcp_port,
> server_conf.ipc_last_active / HZ);
It would be great if you remove sz variable and return it directly.

Thanks.
> return sz;
> --
> 2.25.1
>