[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200908113110.GB2956@quack2.suse.cz>
Date: Tue, 8 Sep 2020 13:31:10 +0200
From: Jan Kara <jack@...e.cz>
To: Tobias Klauser <tklauser@...tanz.ch>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
Christoph Hellwig <hch@....de>,
Al Viro <viro@...iv.linux.org.uk>
Subject: Re: [PATCH] fs: adjust dirtytime_interval_handler definition to
match prototype
On Mon 07-09-20 11:31:40, Tobias Klauser wrote:
> Commit 32927393dc1c ("sysctl: pass kernel pointers to ->proc_handler")
> changed ctl_table.proc_handler to take a kernel pointer. Adjust the
> definition of dirtytime_interval_handler to match its prototype in
> linux/writeback.h which fixes the following sparse error/warning:
>
> fs/fs-writeback.c:2189:50: warning: incorrect type in argument 3 (different address spaces)
> fs/fs-writeback.c:2189:50: expected void *
> fs/fs-writeback.c:2189:50: got void [noderef] __user *buffer
> fs/fs-writeback.c:2184:5: error: symbol 'dirtytime_interval_handler' redeclared with different type (incompatible argument 3 (different address spaces)):
> fs/fs-writeback.c:2184:5: int extern [addressable] [signed] [toplevel] dirtytime_interval_handler( ... )
> fs/fs-writeback.c: note: in included file:
> ./include/linux/writeback.h:374:5: note: previously declared as:
> ./include/linux/writeback.h:374:5: int extern [addressable] [signed] [toplevel] dirtytime_interval_handler( ... )
>
> Fixes: 32927393dc1c ("sysctl: pass kernel pointers to ->proc_handler")
> Cc: Christoph Hellwig <hch@....de>
> Cc: Al Viro <viro@...iv.linux.org.uk>
> Signed-off-by: Tobias Klauser <tklauser@...tanz.ch>
Thanks! The patch looks good to me. You can add:
Reviewed-by: Jan Kara <jack@...e.cz>
Honza
> ---
> fs/fs-writeback.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
> index 149227160ff0..58b27e4070a3 100644
> --- a/fs/fs-writeback.c
> +++ b/fs/fs-writeback.c
> @@ -2184,7 +2184,7 @@ static int __init start_dirtytime_writeback(void)
> __initcall(start_dirtytime_writeback);
>
> int dirtytime_interval_handler(struct ctl_table *table, int write,
> - void __user *buffer, size_t *lenp, loff_t *ppos)
> + void *buffer, size_t *lenp, loff_t *ppos)
> {
> int ret;
>
> --
> 2.27.0
>
--
Jan Kara <jack@...e.com>
SUSE Labs, CR
Powered by blists - more mailing lists