2010-12-08 23:19:38

by Peter Huewe

[permalink] [raw]
Subject: [PATCH] avr32: Fix build failure conflicting types for 'sys_execve'

This patch fixes a build failure[1] for the avr32 architecture which seems
to be introduced by commit d7627467b7a8
"Make do_execve() take a const filename pointer"

The commit changes the definition in arch/avr32/kernel/process.c but
forgot to change it here.

Signed-off-by: Peter Huewe <[email protected]>
---
This build failure exists in linus' tree - added [email protected] to the cc list

KernelVersion: linux-next-20101208
References:
[1] http://kisskb.ellerman.id.au/kisskb/buildresult/3607003/

arch/avr32/include/asm/syscalls.h | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/avr32/include/asm/syscalls.h b/arch/avr32/include/asm/syscalls.h
index ab608b7..1440368 100644
--- a/arch/avr32/include/asm/syscalls.h
+++ b/arch/avr32/include/asm/syscalls.h
@@ -21,8 +21,10 @@ asmlinkage int sys_clone(unsigned long, unsigned long,
unsigned long, unsigned long,
struct pt_regs *);
asmlinkage int sys_vfork(struct pt_regs *);
-asmlinkage int sys_execve(const char __user *, char __user *__user *,
- char __user *__user *, struct pt_regs *);
+asmlinkage int sys_execve(const char __user *ufilename,
+ const char __user *const __user *uargv,
+ const char __user *const __user *uenvp,
+ struct pt_regs *regs);

/* kernel/signal.c */
asmlinkage int sys_sigaltstack(const stack_t __user *, stack_t __user *,
--
1.7.2.2


2010-12-09 08:17:08

by Hans-Christian Egtvedt

[permalink] [raw]
Subject: Re: [PATCH] avr32: Fix build failure conflicting types for 'sys_execve'

On Thu, 2010-12-09 at 00:19 +0100, Peter Huewe wrote:
> This patch fixes a build failure[1] for the avr32 architecture which seems
> to be introduced by commit d7627467b7a8
> "Make do_execve() take a const filename pointer"
>
> The commit changes the definition in arch/avr32/kernel/process.c but
> forgot to change it here.
>
> Signed-off-by: Peter Huewe <[email protected]>

Thanks for the heads-up.

> ---
> This build failure exists in linus' tree - added [email protected] to the cc list
>
> KernelVersion: linux-next-20101208
> References:
> [1] http://kisskb.ellerman.id.au/kisskb/buildresult/3607003/
>
> arch/avr32/include/asm/syscalls.h | 6 ++++--
> 1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/arch/avr32/include/asm/syscalls.h b/arch/avr32/include/asm/syscalls.h
> index ab608b7..1440368 100644
> --- a/arch/avr32/include/asm/syscalls.h
> +++ b/arch/avr32/include/asm/syscalls.h
> @@ -21,8 +21,10 @@ asmlinkage int sys_clone(unsigned long, unsigned long,
> unsigned long, unsigned long,
> struct pt_regs *);
> asmlinkage int sys_vfork(struct pt_regs *);
> -asmlinkage int sys_execve(const char __user *, char __user *__user *,
> - char __user *__user *, struct pt_regs *);
> +asmlinkage int sys_execve(const char __user *ufilename,
> + const char __user *const __user *uargv,
> + const char __user *const __user *uenvp,
> + struct pt_regs *regs);

Actually, I think it would be just as good to move to using the
syscalls.h in asm-generic. Let me prepare a patch or two for that. I can
try to push it through my, now hopefully working, arch tree.

--
Hans-Christian Egtvedt

2010-12-09 18:25:57

by Greg KH

[permalink] [raw]
Subject: Re: [stable] [PATCH] avr32: Fix build failure conflicting types for 'sys_execve'

On Thu, Dec 09, 2010 at 12:19:33AM +0100, Peter Huewe wrote:
> This patch fixes a build failure[1] for the avr32 architecture which seems
> to be introduced by commit d7627467b7a8
> "Make do_execve() take a const filename pointer"
>
> The commit changes the definition in arch/avr32/kernel/process.c but
> forgot to change it here.
>
> Signed-off-by: Peter Huewe <[email protected]>
> ---
> This build failure exists in linus' tree - added [email protected] to the cc list

This is _not_ how to get stuff into the stable kernel tree, sorry.

Please read Documentation/stable_kernel_rules.txt for how to do so.

Hint, put:
Cc: stable <[email protected].

in the signed-off-by: area of your patch and then you will automatically
get the patch applied to the stable trees when it goes to Linus.

Otherwise I have to dig through commit logs and hope to find it, which
wastes lots of time when it's not there yet.

Care to resend?

thanks,

greg k-h

2010-12-09 18:42:49

by Peter Huewe

[permalink] [raw]
Subject: Re: [stable] [PATCH] avr32: Fix build failure conflicting types for 'sys_execve'

> This is _not_ how to get stuff into the stable kernel tree, sorry.
Sorry about that - still learning ;) - thanks for your patience.

> Please read Documentation/stable_kernel_rules.txt for how to do so.
It states: "You must note the upstream commit ID in the changelog of your
submission." - where do I get the ID from?

> Care to resend?
Will do.
Or should I rather drop the patch and we wait on Hans-Christian's patch(es)?

Thanks,
Peter

2010-12-09 19:25:49

by Greg KH

[permalink] [raw]
Subject: Re: [stable] [PATCH] avr32: Fix build failure conflicting types for 'sys_execve'

On Thu, Dec 09, 2010 at 07:42:36PM +0100, Peter H?we wrote:
> > This is _not_ how to get stuff into the stable kernel tree, sorry.
> Sorry about that - still learning ;) - thanks for your patience.
>
> > Please read Documentation/stable_kernel_rules.txt for how to do so.
> It states: "You must note the upstream commit ID in the changelog of your
> submission." - where do I get the ID from?

That would be if the patch was in Linus's tree already. Read the next
paragraph in the document:

- To have the patch automatically included in the stable tree, add the tag
Cc: [email protected]
in the sign-off area. Once the patch is merged it will be applied to
the stable tree without anything else needing to be done by the author
or subsystem maintainer.

> > Care to resend?
> Will do.
> Or should I rather drop the patch and we wait on Hans-Christian's patch(es)?

Whatever will end up in Linus's tree is the correct thing from a stable
point of view.

thanks,

greg k-h

2010-12-09 21:15:39

by Peter Huewe

[permalink] [raw]
Subject: [PATCH v2] avr32: Fix build failure conflicting types for 'sys_execve'

This patch fixes a build failure[1] for the avr32 architecture which seems
to be introduced by commit d7627467b7a8
"Make do_execve() take a const filename pointer"

The commit changes the definition in arch/avr32/kernel/process.c but
forgot to change it here.

Signed-off-by: Peter Huewe <[email protected]>
Cc: stable <[email protected]>
---
KernelVersion: 20101209

arch/avr32/include/asm/syscalls.h | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/avr32/include/asm/syscalls.h b/arch/avr32/include/asm/syscalls.h
index ab608b7..1440368 100644
--- a/arch/avr32/include/asm/syscalls.h
+++ b/arch/avr32/include/asm/syscalls.h
@@ -21,8 +21,10 @@ asmlinkage int sys_clone(unsigned long, unsigned long,
unsigned long, unsigned long,
struct pt_regs *);
asmlinkage int sys_vfork(struct pt_regs *);
-asmlinkage int sys_execve(const char __user *, char __user *__user *,
- char __user *__user *, struct pt_regs *);
+asmlinkage int sys_execve(const char __user *ufilename,
+ const char __user *const __user *uargv,
+ const char __user *const __user *uenvp,
+ struct pt_regs *regs);

/* kernel/signal.c */
asmlinkage int sys_sigaltstack(const stack_t __user *, stack_t __user *,
--
1.7.2.2

2010-12-10 10:26:10

by Hans-Christian Egtvedt

[permalink] [raw]
Subject: Re: [PATCH v2] avr32: Fix build failure conflicting types for 'sys_execve'

On Thu, 2010-12-09 at 22:15 +0100, Peter Huewe wrote:
> This patch fixes a build failure[1] for the avr32 architecture which seems
> to be introduced by commit d7627467b7a8
> "Make do_execve() take a const filename pointer"
>
> The commit changes the definition in arch/avr32/kernel/process.c but
> forgot to change it here.
>
> Signed-off-by: Peter Huewe <[email protected]>
> Cc: stable <[email protected]>

Nack, I've piped up a patch in
http://git.kernel.org/?p=linux/kernel/git/egtvedt/avr32-2.6.git;a=shortlog;h=refs/heads/next that does this and more. The syscalls.h header file needs a bit more cleanup.

I'll also notify stable to get it backported. Do you have an idea how
far back it should go?

--
Hans-Christian Egtvedt

2010-12-10 15:58:42

by David Howells

[permalink] [raw]
Subject: Re: [PATCH] avr32: Fix build failure conflicting types for 'sys_execve'

Peter Huewe <[email protected]> wrote:

> This patch fixes a build failure[1] for the avr32 architecture which seems
> to be introduced by commit d7627467b7a8
> "Make do_execve() take a const filename pointer"
>
> The commit changes the definition in arch/avr32/kernel/process.c but
> forgot to change it here.
>
> Signed-off-by: Peter Huewe <[email protected]>

Acked-by: David Howells <[email protected]>

2010-12-12 19:38:11

by Peter Huewe

[permalink] [raw]
Subject: Re: [PATCH v2] avr32: Fix build failure conflicting types for 'sys_execve'

Am Freitag 10 Dezember 2010, 11:25:41 schrieb Hans-Christian Egtvedt:
> Nack, I've piped up a patch in
> http://git.kernel.org/?p=linux/kernel/git/egtvedt/avr32-2.6.git;a=shortlog;
> h=refs/heads/next that does this and more. The syscalls.h header file needs
> a bit more cleanup.
>
> I'll also notify stable to get it backported. Do you have an idea how
> far back it should go?

Hi,

Linus' tree fails since August 19th due to this issue, so it falls into the
2.6.36 merge window only.
http://kisskb.ellerman.id.au/kisskb/buildresult/3059836/
(but it still failed for quite a while longer due to other issues ;)


Thanks,
Peter
(a reported by on the patch would have been nice ;)

2010-12-13 08:13:23

by Hans-Christian Egtvedt

[permalink] [raw]
Subject: Re: [PATCH v2] avr32: Fix build failure conflicting types for 'sys_execve'

On Sun, 2010-12-12 at 20:37 +0100, Peter Hüwe wrote:
> Am Freitag 10 Dezember 2010, 11:25:41 schrieb Hans-Christian Egtvedt:
> > Nack, I've piped up a patch in
> > http://git.kernel.org/?p=linux/kernel/git/egtvedt/avr32-2.6.git;a=shortlog;
> > h=refs/heads/next that does this and more. The syscalls.h header file needs
> > a bit more cleanup.
> >
> > I'll also notify stable to get it backported. Do you have an idea how
> > far back it should go?
>
> Hi,
>
> Linus' tree fails since August 19th due to this issue, so it falls into the
> 2.6.36 merge window only.
> http://kisskb.ellerman.id.au/kisskb/buildresult/3059836/

Thanks for digging that up. The patch will only need to be applied to
v2.6.36 and beyond then.

> (but it still failed for quite a while longer due to other issues ;)

What other issues?

> Thanks,
> Peter
> (a reported by on the patch would have been nice ;)

Of course, I'll rebase and add you're name to it. Does the same go for
David Howells?

--
Hans-Christian Egtvedt

2010-12-13 17:12:18

by Peter Huewe

[permalink] [raw]
Subject: Re: [PATCH v2] avr32: Fix build failure conflicting types for 'sys_execve'

Am Montag 13 Dezember 2010, 09:12:53 schrieb Hans-Christian Egtvedt:
> > (but it still failed for quite a while longer due to other issues ;)
> What other issues?

There's a linker error at the end:

CC init/version.o
LD init/built-in.o
LD vmlinux
lib/lib.a(vsprintf.o): In function `resource_string':
vsprintf.c:(.text+0x149e): relocation truncated to fit: R_AVR32_9UW_PCREL
against `.text'+16a8
vsprintf.c:(.text+0x14ae): relocation truncated to fit: R_AVR32_9UW_PCREL
against `.text'+16ac

which seems to exist since May 26th in Linus' tree.
See
http://kisskb.ellerman.id.au/kisskb/buildresult/2631302/
http://kisskb.ellerman.id.au/kisskb/target/664/
for more details.

Unfortunately I wasn't able to locate the offending commit using git bisect :/



Reported-by: Peter Huewe <[email protected]>

> > (a reported by on the patch would have been nice ;)
> Of course, I'll rebase and add you're name to it. Does the same go for
> David Howells?
Great, thanks. - although I'm not sure wether an ack, reported-by or signed-
off by fits best ;)
I did get an ack from him:
> Acked-by: David Howells <[email protected]>


Thanks,
Peter



2010-12-13 17:28:34

by Hans-Christian Egtvedt

[permalink] [raw]
Subject: Re: [PATCH v2] avr32: Fix build failure conflicting types for 'sys_execve'

On Mon, 2010-12-13 at 18:12 +0100, Peter Hüwe wrote:
> Am Montag 13 Dezember 2010, 09:12:53 schrieb Hans-Christian Egtvedt:
> > > (but it still failed for quite a while longer due to other issues ;)
> > What other issues?
>
> There's a linker error at the end:
>
> CC init/version.o
> LD init/built-in.o
> LD vmlinux
> lib/lib.a(vsprintf.o): In function `resource_string':
> vsprintf.c:(.text+0x149e): relocation truncated to fit: R_AVR32_9UW_PCREL
> against `.text'+16a8
> vsprintf.c:(.text+0x14ae): relocation truncated to fit: R_AVR32_9UW_PCREL
> against `.text'+16ac
>
> which seems to exist since May 26th in Linus' tree.
> See
> http://kisskb.ellerman.id.au/kisskb/buildresult/2631302/
> http://kisskb.ellerman.id.au/kisskb/target/664/
> for more details.
>
> Unfortunately I wasn't able to locate the offending commit using git bisect :/

Hmm, I haven't seen that, which toolchain and which configuration do you
use?

--
Hans-Christian Egtvedt