[1/2] xtensa: remove nargs from __SYSCALL

Message ID 1546442912-20818-2-git-send-email-firoz.khan@linaro.org
State New
Headers show
Series
  • xtensa: Unify the system call scripts
Related show

Commit Message

Firoz Khan Jan. 2, 2019, 3:28 p.m.
The __SYSCALL macro's arguments are system call number,
system call entry name and number of arguments for the
system call.

Argument- nargs in __SYSCALL(nr, entry, nargs) is neither
calculated nor used anywhere. So it would be better to
keep the implementaion as  __SYSCALL(nr, entry). This will
unifies the implementation with some other architetures
too.

Signed-off-by: Firoz Khan <firoz.khan@linaro.org>

---
 arch/xtensa/kernel/syscall.c              | 2 +-
 arch/xtensa/kernel/syscalls/syscalltbl.sh | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

-- 
1.9.1

Comments

Max Filippov Jan. 4, 2019, 2:58 a.m. | #1
On Wed, Jan 2, 2019 at 7:29 AM Firoz Khan <firoz.khan@linaro.org> wrote:
>

> The __SYSCALL macro's arguments are system call number,

> system call entry name and number of arguments for the

> system call.

>

> Argument- nargs in __SYSCALL(nr, entry, nargs) is neither

> calculated nor used anywhere. So it would be better to

> keep the implementaion as  __SYSCALL(nr, entry). This will

> unifies the implementation with some other architetures

> too.


Perhaps "This will help unify the implementation with other architectures"?

> Signed-off-by: Firoz Khan <firoz.khan@linaro.org>

> ---

>  arch/xtensa/kernel/syscall.c              | 2 +-

>  arch/xtensa/kernel/syscalls/syscalltbl.sh | 4 ++--

>  2 files changed, 3 insertions(+), 3 deletions(-)

>

> diff --git a/arch/xtensa/kernel/syscall.c b/arch/xtensa/kernel/syscall.c

> index 2c415fc..0665339 100644

> --- a/arch/xtensa/kernel/syscall.c

> +++ b/arch/xtensa/kernel/syscall.c

> @@ -31,7 +31,7 @@

>  syscall_t sys_call_table[__NR_syscalls] /* FIXME __cacheline_aligned */= {

>         [0 ... __NR_syscalls - 1] = (syscall_t)&sys_ni_syscall,

>

> -#define __SYSCALL(nr, entry, nargs)[nr] = (syscall_t)entry,

> +#define __SYSCALL(nr, entry)[nr] = (syscall_t)entry,

>  #include <asm/syscall_table.h>

>  #undef __SYSCALL

>  };

> diff --git a/arch/xtensa/kernel/syscalls/syscalltbl.sh b/arch/xtensa/kernel/syscalls/syscalltbl.sh

> index 85d78d9..904b8e6 100644

> --- a/arch/xtensa/kernel/syscalls/syscalltbl.sh

> +++ b/arch/xtensa/kernel/syscalls/syscalltbl.sh

> @@ -13,10 +13,10 @@ emit() {

>         t_entry="$3"

>

>         while [ $t_nxt -lt $t_nr ]; do

> -               printf "__SYSCALL(%s, sys_ni_syscall, )\n" "${t_nxt}"

> +               printf "__SYSCALL(%s,sys_ni_syscall)\n" "${t_nxt}"


Please add space after the comma.

>                 t_nxt=$((t_nxt+1))

>         done

> -       printf "__SYSCALL(%s, %s, )\n" "${t_nxt}" "${t_entry}"

> +       printf "__SYSCALL(%s,%s)\n" "${t_nxt}" "${t_entry}"


Ditto.

>  }

>

>  grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | (

> --

> 1.9.1


With the above changes:
Acked-by: Max Filippov <jcmvbkbc@gmail.com>


-- 
Thanks.
-- Max
Firoz Khan Jan. 4, 2019, 5:17 a.m. | #2
Hi Max,

Thanks for your reply.

On Fri, 4 Jan 2019 at 08:28, Max Filippov <jcmvbkbc@gmail.com> wrote:
> On Wed, Jan 2, 2019 at 7:29 AM Firoz Khan <firoz.khan@linaro.org> wrote:

> >         while [ $t_nxt -lt $t_nr ]; do

> > -               printf "__SYSCALL(%s, sys_ni_syscall, )\n" "${t_nxt}"

> > +               printf "__SYSCALL(%s,sys_ni_syscall)\n" "${t_nxt}"

>

> Please add space after the comma.


This was intentional as I was trying compile other one architecture with the
previous implementation, it was giving the error. So I modified without space
after comma.

Firoz
Max Filippov Jan. 4, 2019, 5:55 a.m. | #3
On Thu, Jan 3, 2019 at 9:17 PM Firoz Khan <firoz.khan@linaro.org> wrote:
> On Fri, 4 Jan 2019 at 08:28, Max Filippov <jcmvbkbc@gmail.com> wrote:

> > On Wed, Jan 2, 2019 at 7:29 AM Firoz Khan <firoz.khan@linaro.org> wrote:

> > >         while [ $t_nxt -lt $t_nr ]; do

> > > -               printf "__SYSCALL(%s, sys_ni_syscall, )\n" "${t_nxt}"

> > > +               printf "__SYSCALL(%s,sys_ni_syscall)\n" "${t_nxt}"

> >

> > Please add space after the comma.

>

> This was intentional as I was trying compile other one architecture with the

> previous implementation, it was giving the error. So I modified without space

> after comma.


I have tested that presence or absence of space does not affect the build
for xtensa, and normally we put space after a comma, so I've mentioned that.

Since this script is anyway removed in the next patch of the series it doesn't
really matter whether the spaces are present or not.

So, with or without this change:
Acked-by: Max Filippov <jcmvbkbc@gmail.com>


-- 
Thanks.
-- Max
Firoz Khan Jan. 4, 2019, 6:14 a.m. | #4
Hi Max,

On Fri, 4 Jan 2019 at 11:25, Max Filippov <jcmvbkbc@gmail.com> wrote:
> On Thu, Jan 3, 2019 at 9:17 PM Firoz Khan <firoz.khan@linaro.org> wrote:

> > On Fri, 4 Jan 2019 at 08:28, Max Filippov <jcmvbkbc@gmail.com> wrote:

> > > On Wed, Jan 2, 2019 at 7:29 AM Firoz Khan <firoz.khan@linaro.org> wrote:

> > This was intentional as I was trying compile other one architecture with the

> > previous implementation, it was giving the error. So I modified without space

> > after comma.

>

> I have tested that presence or absence of space does not affect the build

> for xtensa, and normally we put space after a comma, so I've mentioned that.

>

> Since this script is anyway removed in the next patch of the series it doesn't

> really matter whether the spaces are present or not.


Yes, you are right, there is no effect in xtensa but if I'm right
there is a problem
in powerpc architecture (not remembering exactly which arch) with this space
after comma.

BTW, the script from all architecture will be removed and keep it in
scripts directory
is our plan. So to satisfy powerpc (again I'm not sure which arch) I
just did this
change.

Thanks for your feedback.

Firoz

Patch

diff --git a/arch/xtensa/kernel/syscall.c b/arch/xtensa/kernel/syscall.c
index 2c415fc..0665339 100644
--- a/arch/xtensa/kernel/syscall.c
+++ b/arch/xtensa/kernel/syscall.c
@@ -31,7 +31,7 @@ 
 syscall_t sys_call_table[__NR_syscalls] /* FIXME __cacheline_aligned */= {
 	[0 ... __NR_syscalls - 1] = (syscall_t)&sys_ni_syscall,
 
-#define __SYSCALL(nr, entry, nargs)[nr] = (syscall_t)entry,
+#define __SYSCALL(nr, entry)[nr] = (syscall_t)entry,
 #include <asm/syscall_table.h>
 #undef __SYSCALL
 };
diff --git a/arch/xtensa/kernel/syscalls/syscalltbl.sh b/arch/xtensa/kernel/syscalls/syscalltbl.sh
index 85d78d9..904b8e6 100644
--- a/arch/xtensa/kernel/syscalls/syscalltbl.sh
+++ b/arch/xtensa/kernel/syscalls/syscalltbl.sh
@@ -13,10 +13,10 @@  emit() {
 	t_entry="$3"
 
 	while [ $t_nxt -lt $t_nr ]; do
-		printf "__SYSCALL(%s, sys_ni_syscall, )\n" "${t_nxt}"
+		printf "__SYSCALL(%s,sys_ni_syscall)\n" "${t_nxt}"
 		t_nxt=$((t_nxt+1))
 	done
-	printf "__SYSCALL(%s, %s, )\n" "${t_nxt}" "${t_entry}"
+	printf "__SYSCALL(%s,%s)\n" "${t_nxt}" "${t_entry}"
 }
 
 grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | (