[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1455713829-9856-1-git-send-email-daniel.wagner@bmw-carit.de>
Date: Wed, 17 Feb 2016 13:57:09 +0100
From: Daniel Wagner <daniel.wagner@...-carit.de>
To: linux-kernel@...r.kernel.org
Cc: linux-alpha@...r.kernel.org, linux-fsdevel@...r.kernel.org,
Richard Henderson <rth@...ddle.net>,
Ivan Kokshaysky <ink@...assic.park.msu.ru>,
Matt Turner <mattst88@...il.com>,
Alexander Viro <viro@...iv.linux.org.uk>,
Daniel Wagner <daniel.wagner@...-carit.de>
Subject: [PATCH resend] binfmt_em86: load_em86: Remove unused i_arg variable and constify i_name
i_arg is not used at all therefore remove it. This also prevents
a warning with gcc 5.2 when -Wincompatible-pointer-types is enabled:
fs/binfmt_em86.c:73:35: warning: passing argument 2 of ‘copy_strings_kernel’ from incompatible pointer type [-Werror=incompatible-pointer-types]
retval = copy_strings_kernel(1, &i_arg, bprm);
The second error would come from i_name which is defined as char pointer
without the const attribute.
fs/binfmt_em86.c:71:34: warning: passing argument 2 of ‘copy_strings_kernel’ from incompatible pointer type [-Werror=incompatible-pointer-types]
retval = copy_strings_kernel(1, &i_name, bprm);
While at it, check the remove_arg_zero return value too.
fs/binfmt_em86.c:68:2: warning: ignoring return value of ‘remove_arg_zero’, declared with attribute warn_unused_result [-Wunused-result]
remove_arg_zero(bprm);
^
Signed-off-by: Daniel Wagner <daniel.wagner@...-carit.de>
---
I forgot to Cc the linux-alpha list and Cc also the alpha arch
maintainers... 2nd try.
fs/binfmt_em86.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/fs/binfmt_em86.c b/fs/binfmt_em86.c
index 4905385..bc8fff2 100644
--- a/fs/binfmt_em86.c
+++ b/fs/binfmt_em86.c
@@ -24,7 +24,8 @@
static int load_em86(struct linux_binprm *bprm)
{
- char *interp, *i_name, *i_arg;
+ const char *i_name;
+ char *interp;
struct file * file;
int retval;
struct elfhdr elf_ex;
@@ -55,7 +56,6 @@ static int load_em86(struct linux_binprm *bprm)
*/
interp = EM86_INTERP;
i_name = EM86_I_NAME;
- i_arg = NULL; /* We reserve the right to add an arg later */
/*
* Splice in (1) the interpreter's name for argv[0]
@@ -65,15 +65,11 @@ static int load_em86(struct linux_binprm *bprm)
* This is done in reverse order, because of how the
* user environment and arguments are stored.
*/
- remove_arg_zero(bprm);
+ retval = remove_arg_zero(bprm);
+ if (retval < 0) return retval;
retval = copy_strings_kernel(1, &bprm->filename, bprm);
if (retval < 0) return retval;
bprm->argc++;
- if (i_arg) {
- retval = copy_strings_kernel(1, &i_arg, bprm);
- if (retval < 0) return retval;
- bprm->argc++;
- }
retval = copy_strings_kernel(1, &i_name, bprm);
if (retval < 0) return retval;
bprm->argc++;
--
2.5.0
Powered by blists - more mailing lists