[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <875c0a70-fb68-9801-9257-0b74f34c784c@linux-m68k.org>
Date: Wed, 20 Jul 2016 17:15:15 +1000
From: Greg Ungerer <gerg@...ux-m68k.org>
To: Nicolas Pitre <nicolas.pitre@...aro.org>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Alexander Viro <viro@...iv.linux.org.uk>,
David Howells <dhowells@...hat.com>
Subject: Re: [PATCH v3 09/12] binfmt_flat: use clear_user() rather than
memset() to clear .bss
On 20/07/16 14:20, Nicolas Pitre wrote:
> This is needed on systems with a MMU.
>
> Signed-off-by: Nicolas Pitre <nico@...aro.org>
> Reviewed-by: Greg Ungerer <gerg@...ux-m68k.org>
> ---
> fs/binfmt_flat.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c
> index 28fc272d9a..0d89830f76 100644
> --- a/fs/binfmt_flat.c
> +++ b/fs/binfmt_flat.c
> @@ -798,10 +798,11 @@ static int load_flat_file(struct linux_binprm * bprm,
> flush_icache_range(start_code, end_code);
>
> /* zero the BSS, BRK and stack areas */
> - memset((void*)(datapos + data_len), 0, bss_len +
> + if (clear_user((void __user *)(datapos + data_len), bss_len +
nit: this adds a trailing white space ^
(Yes, the memset did have this before as well)
Regards
Greg
> (memp + memp_size - stack_len - /* end brk */
> libinfo->lib_list[id].start_brk) + /* start brk */
> - stack_len);
> + stack_len))
> + return -EFAULT;
>
> return 0;
> err:
>
Powered by blists - more mailing lists