2008-03-06 15:15:31

by ye janboe

[permalink] [raw]
Subject: [PATCH] fix signal return code when enable CONFIG_OABI_COMPAT

commit b4e8bde513a9a477c30c8769073ced7b59676d48
Author: janboe <[email protected]>
Date: Thu Mar 6 23:00:23 2008 +0800

fix signal return code when enable CONFIG_OABI_COMPAT.
because this will make kernel report this syscall obsolete.
Signed-off-by: Janboe Ye <[email protected]>

diff --git a/arch/arm/kernel/signal.c b/arch/arm/kernel/signal.c
index 54cdf1a..b863255 100644
--- a/arch/arm/kernel/signal.c
+++ b/arch/arm/kernel/signal.c
@@ -26,8 +26,13 @@
/*
* For ARM syscalls, we encode the syscall number into the instruction.
*/
+#ifndef CONFIG_AEABI
#define SWI_SYS_SIGRETURN (0xef000000|(__NR_sigreturn))
#define SWI_SYS_RT_SIGRETURN (0xef000000|(__NR_rt_sigreturn))
+#else
+#define SWI_SYS_SIGRETURN (0xef000000)
+#define SWI_SYS_RT_SIGRETURN (0xef000000)
+#endif

/*
* With EABI, the syscall number has to be loaded into r7.


2008-03-06 15:33:58

by Russell King - ARM Linux

[permalink] [raw]
Subject: Re: [PATCH] fix signal return code when enable CONFIG_OABI_COMPAT

On Thu, Mar 06, 2008 at 11:14:50PM +0800, ye janboe wrote:
> commit b4e8bde513a9a477c30c8769073ced7b59676d48
> Author: janboe <[email protected]>
> Date: Thu Mar 6 23:00:23 2008 +0800
>
> fix signal return code when enable CONFIG_OABI_COMPAT.
> because this will make kernel report this syscall obsolete.
> Signed-off-by: Janboe Ye <[email protected]>

This is all horribly broken for OABI compat anyway (because __NR_* don't
contain the right prefix). So this patch doesn't actually fix the real
problem.

2008-03-07 11:09:32

by ye janboe

[permalink] [raw]
Subject: Re: [PATCH] fix signal return code when enable CONFIG_OABI_COMPAT

Russell

I resubmit my patch, please review it.
Thanks

commit 31644e57359644d3f376f293f1a45b7c181175b6
Author: janboe <[email protected]>
Date: Thu Mar 6 23:00:23 2008 +0800

fix signal return code when enable CONFIG_OABI_COMPAT
Signed-off-by: Janboe Ye <[email protected]>

diff --git a/arch/arm/kernel/signal.c b/arch/arm/kernel/signal.c
index 54cdf1a..ef2f86a 100644
--- a/arch/arm/kernel/signal.c
+++ b/arch/arm/kernel/signal.c
@@ -26,8 +26,8 @@
/*
* For ARM syscalls, we encode the syscall number into the instruction.
*/
-#define SWI_SYS_SIGRETURN (0xef000000|(__NR_sigreturn))
-#define SWI_SYS_RT_SIGRETURN (0xef000000|(__NR_rt_sigreturn))
+#define SWI_SYS_SIGRETURN
(0xef000000|(__NR_sigreturn)|(__NR_OABI_SYSCALL_BASE))
+#define SWI_SYS_RT_SIGRETURN
(0xef000000|(__NR_rt_sigreturn)|(__NR_OABI_SYSCALL_BASE))

/*
* With EABI, the syscall number has to be loaded into r7.


2008/3/6, Russell King - ARM Linux <[email protected]>:
> On Thu, Mar 06, 2008 at 11:14:50PM +0800, ye janboe wrote:
> > commit b4e8bde513a9a477c30c8769073ced7b59676d48
> > Author: janboe <[email protected]>
> > Date: Thu Mar 6 23:00:23 2008 +0800
> >
> > fix signal return code when enable CONFIG_OABI_COMPAT.
> > because this will make kernel report this syscall obsolete.
> > Signed-off-by: Janboe Ye <[email protected]>
>
>
> This is all horribly broken for OABI compat anyway (because __NR_* don't
> contain the right prefix). So this patch doesn't actually fix the real
> problem.
>

2008-03-17 18:39:56

by Russell King - ARM Linux

[permalink] [raw]
Subject: Re: [PATCH] fix signal return code when enable CONFIG_OABI_COMPAT

On Fri, Mar 07, 2008 at 07:09:22PM +0800, ye janboe wrote:
> Russell
>
> I resubmit my patch, please review it.

Having thought about this, yes, this fix will do. Please submit to the
patch system. Thanks.

> Thanks
>
> commit 31644e57359644d3f376f293f1a45b7c181175b6
> Author: janboe <[email protected]>
> Date: Thu Mar 6 23:00:23 2008 +0800
>
> fix signal return code when enable CONFIG_OABI_COMPAT
> Signed-off-by: Janboe Ye <[email protected]>
>
> diff --git a/arch/arm/kernel/signal.c b/arch/arm/kernel/signal.c
> index 54cdf1a..ef2f86a 100644
> --- a/arch/arm/kernel/signal.c
> +++ b/arch/arm/kernel/signal.c
> @@ -26,8 +26,8 @@
> /*
> * For ARM syscalls, we encode the syscall number into the instruction.
> */
> -#define SWI_SYS_SIGRETURN (0xef000000|(__NR_sigreturn))
> -#define SWI_SYS_RT_SIGRETURN (0xef000000|(__NR_rt_sigreturn))
> +#define SWI_SYS_SIGRETURN
> (0xef000000|(__NR_sigreturn)|(__NR_OABI_SYSCALL_BASE))
> +#define SWI_SYS_RT_SIGRETURN
> (0xef000000|(__NR_rt_sigreturn)|(__NR_OABI_SYSCALL_BASE))
>
> /*
> * With EABI, the syscall number has to be loaded into r7.
>
>
> 2008/3/6, Russell King - ARM Linux <[email protected]>:
> > On Thu, Mar 06, 2008 at 11:14:50PM +0800, ye janboe wrote:
> > > commit b4e8bde513a9a477c30c8769073ced7b59676d48
> > > Author: janboe <[email protected]>
> > > Date: Thu Mar 6 23:00:23 2008 +0800
> > >
> > > fix signal return code when enable CONFIG_OABI_COMPAT.
> > > because this will make kernel report this syscall obsolete.
> > > Signed-off-by: Janboe Ye <[email protected]>
> >
> >
> > This is all horribly broken for OABI compat anyway (because __NR_* don't
> > contain the right prefix). So this patch doesn't actually fix the real
> > problem.
> >