Xiongfeng Wang
2020-Jul-20 08:24 UTC
[Ocfs2-devel] [PATCH] dlmfs: add a newline when printing 'capabilities' by sysfs
When I cat module parameter 'capabilities' by sysfs, it displays as follows. It's better to add a newline for easy reading. root at syzkaller:~# cat /sys/module/ocfs2_dlmfs/parameters/capabilities bast stackglueroot at syzkaller:~# Signed-off-by: Xiongfeng Wang <wangxiongfeng2 at huawei.com> --- fs/ocfs2/dlmfs/dlmfs.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/fs/ocfs2/dlmfs/dlmfs.c b/fs/ocfs2/dlmfs/dlmfs.c index ea868c6f9800..1f9c864ec09b 100644 --- a/fs/ocfs2/dlmfs/dlmfs.c +++ b/fs/ocfs2/dlmfs/dlmfs.c @@ -82,8 +82,13 @@ static int param_set_dlmfs_capabilities(const char *val, static int param_get_dlmfs_capabilities(char *buffer, const struct kernel_param *kp) { - return strlcpy(buffer, DLMFS_CAPABILITIES, + int cnt; + + cnt = strlcpy(buffer, DLMFS_CAPABILITIES, strlen(DLMFS_CAPABILITIES) + 1); + cnt += sprintf(buffer + cnt, "\n"); + + return cnt; } module_param_call(capabilities, param_set_dlmfs_capabilities, param_get_dlmfs_capabilities, NULL, 0444); -- 2.20.1
Changwei Ge
2020-Jul-21 02:24 UTC
[Ocfs2-devel] [PATCH] dlmfs: add a newline when printing 'capabilities' by sysfs
Hi? I am afraid that doing so might introduce a compatible risk into exited systems which reply ocfs2/dlmfs. We can't guarantee that no system management tools is using the information reported from this file. Basically, ocfs2-tools works of top of it. But after a quick glance at the source, I didn't see side effect if this path applied. Better you can do some test if this patch breaks ocfs2-tools. Still my suggestion is that we don't try to touch this file as what I explained above. Thanks, Changwei On 7/20/20 4:24 PM, Xiongfeng Wang wrote:> When I cat module parameter 'capabilities' by sysfs, it displays as > follows. It's better to add a newline for easy reading. > > root at syzkaller:~# cat /sys/module/ocfs2_dlmfs/parameters/capabilities > bast stackglueroot at syzkaller:~# > > Signed-off-by: Xiongfeng Wang <wangxiongfeng2 at huawei.com> > --- > fs/ocfs2/dlmfs/dlmfs.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/fs/ocfs2/dlmfs/dlmfs.c b/fs/ocfs2/dlmfs/dlmfs.c > index ea868c6f9800..1f9c864ec09b 100644 > --- a/fs/ocfs2/dlmfs/dlmfs.c > +++ b/fs/ocfs2/dlmfs/dlmfs.c > @@ -82,8 +82,13 @@ static int param_set_dlmfs_capabilities(const char *val, > static int param_get_dlmfs_capabilities(char *buffer, > const struct kernel_param *kp) > { > - return strlcpy(buffer, DLMFS_CAPABILITIES, > + int cnt; > + > + cnt = strlcpy(buffer, DLMFS_CAPABILITIES, > strlen(DLMFS_CAPABILITIES) + 1); > + cnt += sprintf(buffer + cnt, "\n"); > + > + return cnt; > } > module_param_call(capabilities, param_set_dlmfs_capabilities, > param_get_dlmfs_capabilities, NULL, 0444); >