linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Firoz Khan <firoz.khan@linaro.org>
To: "open list:RALINK MIPS ARCHITECTURE" <linux-mips@linux-mips.org>,
	Ralf Baechle <ralf@linux-mips.org>,
	Paul Burton <paul.burton@mips.com>,
	James Hogan <jhogan@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Philippe Ombredanne <pombredanne@nexb.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Kate Stewart <kstewart@linuxfoundation.org>
Cc: y2038 Mailman List <y2038@lists.linaro.org>,
	Arnd Bergmann <arnd@arndb.de>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linux-Arch <linux-arch@vger.kernel.org>,
	Deepa Dinamani <deepa.kernel@gmail.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Subject: Re: [PATCH v3 0/6] mips: system call table generation support
Date: Tue, 4 Dec 2018 09:33:08 +0530	[thread overview]
Message-ID: <CALxhOnjSEp++W5T3Sf0eX+8hPt08ER22M817M-Vhd24_96a_EQ@mail.gmail.com> (raw)
In-Reply-To: <1543481016-18500-1-git-send-email-firoz.khan@linaro.org>

Hi Paul,

On Thu, 29 Nov 2018 at 14:14, Firoz Khan <firoz.khan@linaro.org> wrote:
>
> The purpose of this patch series is, we can easily
> add/modify/delete system call table support by cha-
> nging entry in syscall.tbl file instead of manually
> changing many files. The other goal is to unify the
> system call table generation support implementation
> across all the architectures.
>
> The system call tables are in different format in
> all architecture. It will be difficult to manually
> add, modify or delete the system calls in the resp-
> ective files manually. To make it easy by keeping a
> script and which'll generate uapi header file and
> syscall table file.
>
> syscall.tbl contains the list of available system
> calls along with system call number and correspond-
> ing entry point. Add a new system call in this arch-
> itecture will be possible by adding new entry in
> the syscall.tbl file.
>
> Adding a new table entry consisting of:
>         - System call number.
>         - ABI.
>         - System call name.
>         - Entry point name.
>         - Compat entry name, if required.
>
> ARM, s390 and x86 architecuture does exist the sim-
> ilar support. I leverage their implementation to
> come up with a generic solution.
>
> I have done the same support for work for alpha,
> ia64, m68k, microblaze, parisc, powerpc, sh, sparc,
> and xtensa. Below mentioned git repository contains
> more details about the workflow.
>
> https://github.com/frzkhn/system_call_table_generator/
>
> Finally, this is the ground work to solve the Y2038
> issue. We need to add two dozen of system calls to
> solve Y2038 issue. So this patch series will help to
> add new system calls easily by adding new entry in
> the syscall.tbl.
>
> Changes since v2:
>  - fixed __NR_syscalls assign issue.
>
> Changes since v1:
>  - optimized/updated the syscall table generation
>    scripts.
>  - fixed all mixed indentation issues in syscall.tbl.
>  - added "comments" in syscall_*.tbl.
>  - changed from generic-y to generated-y in Kbuild.
>
> Firoz Khan (6):
>   mips: add __NR_syscalls along with __NR_Linux_syscalls
>   mips: remove unused macros
>   mips: add +1 to __NR_syscalls in uapi header
>   mips: remove syscall table entries
>   mips: add system call table generation support
>   mips: generate uapi header and system call table files

Could you review this patch series. I would appreciate if you can
perform the boot test on the actual platform.

Thanks
Firoz

>
>  arch/mips/Makefile                        |    3 +
>  arch/mips/include/asm/Kbuild              |    4 +
>  arch/mips/include/asm/unistd.h            |    8 -
>  arch/mips/include/uapi/asm/Kbuild         |    6 +
>  arch/mips/include/uapi/asm/unistd.h       | 1065 +----------------------------
>  arch/mips/kernel/Makefile                 |    2 +-
>  arch/mips/kernel/ftrace.c                 |    8 +-
>  arch/mips/kernel/scall32-o32.S            |  391 +----------
>  arch/mips/kernel/scall64-64.S             |  444 ------------
>  arch/mips/kernel/scall64-n32.S            |  341 +--------
>  arch/mips/kernel/scall64-n64.S            |  117 ++++
>  arch/mips/kernel/scall64-o32.S            |  379 +---------
>  arch/mips/kernel/syscalls/Makefile        |   96 +++
>  arch/mips/kernel/syscalls/syscall_n32.tbl |  343 ++++++++++
>  arch/mips/kernel/syscalls/syscall_n64.tbl |  339 +++++++++
>  arch/mips/kernel/syscalls/syscall_o32.tbl |  382 +++++++++++
>  arch/mips/kernel/syscalls/syscallhdr.sh   |   36 +
>  arch/mips/kernel/syscalls/syscallnr.sh    |   30 +
>  arch/mips/kernel/syscalls/syscalltbl.sh   |   36 +
>  19 files changed, 1430 insertions(+), 2600 deletions(-)
>  delete mode 100644 arch/mips/kernel/scall64-64.S
>  create mode 100644 arch/mips/kernel/scall64-n64.S
>  create mode 100644 arch/mips/kernel/syscalls/Makefile
>  create mode 100644 arch/mips/kernel/syscalls/syscall_n32.tbl
>  create mode 100644 arch/mips/kernel/syscalls/syscall_n64.tbl
>  create mode 100644 arch/mips/kernel/syscalls/syscall_o32.tbl
>  create mode 100644 arch/mips/kernel/syscalls/syscallhdr.sh
>  create mode 100644 arch/mips/kernel/syscalls/syscallnr.sh
>  create mode 100644 arch/mips/kernel/syscalls/syscalltbl.sh
>
> --
> 1.9.1
>

  parent reply	other threads:[~2018-12-04  4:03 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-29  8:43 [PATCH v3 0/6] mips: system call table generation support Firoz Khan
2018-11-29  8:43 ` [PATCH v3 1/6] mips: add __NR_syscalls along with __NR_Linux_syscalls Firoz Khan
2018-11-29 14:10   ` Arnd Bergmann
2018-11-30  4:45     ` Firoz Khan
2018-11-29  8:43 ` [PATCH v3 2/6] mips: remove unused macros Firoz Khan
2018-11-29  8:43 ` [PATCH v3 3/6] mips: add +1 to __NR_syscalls in uapi header Firoz Khan
2018-11-29  8:43 ` [PATCH v3 4/6] mips: remove syscall table entries Firoz Khan
2018-11-29  8:43 ` [PATCH v3 5/6] mips: add system call table generation support Firoz Khan
2018-11-29 14:15   ` Arnd Bergmann
2018-11-30  5:05     ` Firoz Khan
2018-11-29  8:43 ` [PATCH v3 6/6] mips: generate uapi header and system call table files Firoz Khan
2018-11-29 14:22   ` Arnd Bergmann
2018-11-30  5:13     ` Firoz Khan
2018-12-04  4:03 ` Firoz Khan [this message]
2018-12-05  6:34   ` [PATCH v3 0/6] mips: system call table generation support Paul Burton
2018-12-05  7:12     ` Firoz Khan
2018-12-06 12:15     ` Maciej W. Rozycki
2018-12-06 16:19       ` Joseph Myers
2018-12-06 17:02         ` Maciej W. Rozycki
2018-12-06 17:20           ` Joseph Myers
2018-12-06 17:43             ` Maciej W. Rozycki
2018-12-06 18:10               ` Florian Weimer
2018-12-07 14:33                 ` Maciej W. Rozycki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CALxhOnjSEp++W5T3Sf0eX+8hPt08ER22M817M-Vhd24_96a_EQ@mail.gmail.com \
    --to=firoz.khan@linaro.org \
    --cc=arnd@arndb.de \
    --cc=deepa.kernel@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jhogan@kernel.org \
    --cc=kstewart@linuxfoundation.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@linux-mips.org \
    --cc=marcin.juszkiewicz@linaro.org \
    --cc=paul.burton@mips.com \
    --cc=pombredanne@nexb.com \
    --cc=ralf@linux-mips.org \
    --cc=tglx@linutronix.de \
    --cc=y2038@lists.linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).