Re: [PATCH 0/3] System call table generation support
Hi Satheesh, On Fri, 30 Nov 2018 at 12:32, Satheesh Rajendran wrote: > > On Thu, Nov 29, 2018 at 01:48:16PM +0530, Firoz Khan wrote: > > Hi Sathish, > > > > Thanks for your email. > > > > On Thu, 29 Nov 2018 at 12:05, Satheesh Rajendran > > wrote: > > > > > > On Fri, Sep 14, 2018 at 02:02:57PM +0530, Firoz Khan wrote: > > > > The purpose of this patch series is: > > > > 1. We can easily add/modify/delete system call by changing entry > > > > in syscall.tbl file. No need to manually edit many files. > > > > > > > > 2. It is easy to unify the system call implementation across all > > > > the architectures. > > > > > > > > The system call tables are in different format in all architecture > > > > and it will be difficult to manually add or modify the system calls > > > > in the respective files manually. To make it easy by keeping a script > > > > and which'll generate the header file and syscall table file so this > > > > change will unify them across all architectures. > > > > > > > > syscall.tbl contains the list of available system calls along with > > > > system call number and corresponding entry point. Add a new system > > > > call in this architecture 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 similar support. I > > > > leverage their implementation to come up with a generic solution. > > > > > > > > I have done the same support for work for alpha, m68k, microblaze, > > > > ia64, mips, parisc, sh, sparc, and xtensa. But I started sending > > > > the patch for one architecuture for review. Below mentioned git > > > > repository contains more details. > > > > Git repo:- https://github.com/frzkhn/system_call_table_generator/ > > > > > > > > Finally, this is the ground work for solving the Y2038 issue. We > > > > need to add/change two dozen of system calls to solve Y2038 issue. > > > > So this patch series will help to easily modify from existing > > > > system call to Y2038 compatible system calls. > > > > > > > > I started working system call table generation on 4.17-rc1. I used > > > > marcin's script - https://github.com/hrw/syscalls-table to generate > > > > the syscall.tbl file. And this will be the input to the system call > > > > table generation script. But there are couple system call got add > > > > in the latest rc release. If run Marcin's script on latest release, > > > > It will generate a new syscall.tbl. But I still use the old file - > > > > syscall.tbl and once all review got over I'll update syscall.tbl > > > > alone w.r.to the tip of the kernel. The impact of this thing, few > > > > of the system call won't work. > > > > > > > > Firoz Khan (3): > > > > powerpc: Replace NR_syscalls macro from asm/unistd.h > > > > powerpc: Add system call table generation support > > > > powerpc: uapi header and system call table file generation > > > > > > > > arch/powerpc/Makefile | 3 + > > > > arch/powerpc/include/asm/Kbuild | 3 + > > > > arch/powerpc/include/asm/unistd.h | 3 +- > > > > arch/powerpc/include/uapi/asm/Kbuild| 2 + > > > > arch/powerpc/include/uapi/asm/unistd.h | 391 > > > > +--- > > > > arch/powerpc/kernel/Makefile| 3 +- > > > > arch/powerpc/kernel/syscall_table_32.S | 9 + > > > > arch/powerpc/kernel/syscall_table_64.S | 17 ++ > > > > arch/powerpc/kernel/syscalls/Makefile | 51 > > > > arch/powerpc/kernel/syscalls/syscall_32.tbl | 378 > > > > +++ > > > > arch/powerpc/kernel/syscalls/syscall_64.tbl | 372 > > > > ++ > > > > arch/powerpc/kernel/syscalls/syscallhdr.sh | 37 +++ > > > > arch/powerpc/kernel/syscalls/syscalltbl.sh | 38 +++ > > > > arch/powerpc/kernel/systbl.S| 50 > > > > 14 files changed, 916 insertions(+), 441 deletions(-) > > > > create mode 100644 arch/powerpc/kernel/syscall_table_32.S > > > > create mode 100644 arch/powerpc/kernel/syscall_table_64.S > > > > create mode 100644 arch/powerpc/kernel/syscalls/Makefile > > > > create mode 100644 arch/powerpc/kernel/syscalls/syscall_32.tbl > > > > create mode 100644 arch/powerpc/kernel/syscalls/syscall_64.tbl > > > > create mode 100644 arch/powerpc/kernel/syscalls/syscallhdr.sh > > > > create mode 100644 arch/powerpc/kernel/syscalls/syscalltbl.sh > > > > delete mode 100644 arch/powerpc/kernel/systbl.S > > > > > > Hi, > > > > > > This patch series failed to boot in IBM Power8 box with below base commit > > > and built with ppc64le_defconfig, > > > https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=merge&id=183cbf93be88d1a4fb572e27b1e08aa0ad85 > > >
Re: [PATCH 0/3] System call table generation support
On Thu, Nov 29, 2018 at 01:48:16PM +0530, Firoz Khan wrote: > Hi Sathish, > > Thanks for your email. > > On Thu, 29 Nov 2018 at 12:05, Satheesh Rajendran > wrote: > > > > On Fri, Sep 14, 2018 at 02:02:57PM +0530, Firoz Khan wrote: > > > The purpose of this patch series is: > > > 1. We can easily add/modify/delete system call by changing entry > > > in syscall.tbl file. No need to manually edit many files. > > > > > > 2. It is easy to unify the system call implementation across all > > > the architectures. > > > > > > The system call tables are in different format in all architecture > > > and it will be difficult to manually add or modify the system calls > > > in the respective files manually. To make it easy by keeping a script > > > and which'll generate the header file and syscall table file so this > > > change will unify them across all architectures. > > > > > > syscall.tbl contains the list of available system calls along with > > > system call number and corresponding entry point. Add a new system > > > call in this architecture 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 similar support. I > > > leverage their implementation to come up with a generic solution. > > > > > > I have done the same support for work for alpha, m68k, microblaze, > > > ia64, mips, parisc, sh, sparc, and xtensa. But I started sending > > > the patch for one architecuture for review. Below mentioned git > > > repository contains more details. > > > Git repo:- https://github.com/frzkhn/system_call_table_generator/ > > > > > > Finally, this is the ground work for solving the Y2038 issue. We > > > need to add/change two dozen of system calls to solve Y2038 issue. > > > So this patch series will help to easily modify from existing > > > system call to Y2038 compatible system calls. > > > > > > I started working system call table generation on 4.17-rc1. I used > > > marcin's script - https://github.com/hrw/syscalls-table to generate > > > the syscall.tbl file. And this will be the input to the system call > > > table generation script. But there are couple system call got add > > > in the latest rc release. If run Marcin's script on latest release, > > > It will generate a new syscall.tbl. But I still use the old file - > > > syscall.tbl and once all review got over I'll update syscall.tbl > > > alone w.r.to the tip of the kernel. The impact of this thing, few > > > of the system call won't work. > > > > > > Firoz Khan (3): > > > powerpc: Replace NR_syscalls macro from asm/unistd.h > > > powerpc: Add system call table generation support > > > powerpc: uapi header and system call table file generation > > > > > > arch/powerpc/Makefile | 3 + > > > arch/powerpc/include/asm/Kbuild | 3 + > > > arch/powerpc/include/asm/unistd.h | 3 +- > > > arch/powerpc/include/uapi/asm/Kbuild| 2 + > > > arch/powerpc/include/uapi/asm/unistd.h | 391 > > > +--- > > > arch/powerpc/kernel/Makefile| 3 +- > > > arch/powerpc/kernel/syscall_table_32.S | 9 + > > > arch/powerpc/kernel/syscall_table_64.S | 17 ++ > > > arch/powerpc/kernel/syscalls/Makefile | 51 > > > arch/powerpc/kernel/syscalls/syscall_32.tbl | 378 > > > +++ > > > arch/powerpc/kernel/syscalls/syscall_64.tbl | 372 > > > ++ > > > arch/powerpc/kernel/syscalls/syscallhdr.sh | 37 +++ > > > arch/powerpc/kernel/syscalls/syscalltbl.sh | 38 +++ > > > arch/powerpc/kernel/systbl.S| 50 > > > 14 files changed, 916 insertions(+), 441 deletions(-) > > > create mode 100644 arch/powerpc/kernel/syscall_table_32.S > > > create mode 100644 arch/powerpc/kernel/syscall_table_64.S > > > create mode 100644 arch/powerpc/kernel/syscalls/Makefile > > > create mode 100644 arch/powerpc/kernel/syscalls/syscall_32.tbl > > > create mode 100644 arch/powerpc/kernel/syscalls/syscall_64.tbl > > > create mode 100644 arch/powerpc/kernel/syscalls/syscallhdr.sh > > > create mode 100644 arch/powerpc/kernel/syscalls/syscalltbl.sh > > > delete mode 100644 arch/powerpc/kernel/systbl.S > > > > Hi, > > > > This patch series failed to boot in IBM Power8 box with below base commit > > and built with ppc64le_defconfig, > > https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=merge&id=183cbf93be88d1a4fb572e27b1e08aa0ad85 > > I think you are applied some old patch series. Could you please > perform the boot test on powerpc v3 which I have sent few hour before. Hi Firoz, Looks like I chose a wrong mail to reply, but did test with v3 series itself. _v3,4_4__powerpc_generate_uapi_he
Re: [PATCH 0/3] System call table generation support
Hi Sathish, Thanks for your email. On Thu, 29 Nov 2018 at 12:05, Satheesh Rajendran wrote: > > On Fri, Sep 14, 2018 at 02:02:57PM +0530, Firoz Khan wrote: > > The purpose of this patch series is: > > 1. We can easily add/modify/delete system call by changing entry > > in syscall.tbl file. No need to manually edit many files. > > > > 2. It is easy to unify the system call implementation across all > > the architectures. > > > > The system call tables are in different format in all architecture > > and it will be difficult to manually add or modify the system calls > > in the respective files manually. To make it easy by keeping a script > > and which'll generate the header file and syscall table file so this > > change will unify them across all architectures. > > > > syscall.tbl contains the list of available system calls along with > > system call number and corresponding entry point. Add a new system > > call in this architecture 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 similar support. I > > leverage their implementation to come up with a generic solution. > > > > I have done the same support for work for alpha, m68k, microblaze, > > ia64, mips, parisc, sh, sparc, and xtensa. But I started sending > > the patch for one architecuture for review. Below mentioned git > > repository contains more details. > > Git repo:- https://github.com/frzkhn/system_call_table_generator/ > > > > Finally, this is the ground work for solving the Y2038 issue. We > > need to add/change two dozen of system calls to solve Y2038 issue. > > So this patch series will help to easily modify from existing > > system call to Y2038 compatible system calls. > > > > I started working system call table generation on 4.17-rc1. I used > > marcin's script - https://github.com/hrw/syscalls-table to generate > > the syscall.tbl file. And this will be the input to the system call > > table generation script. But there are couple system call got add > > in the latest rc release. If run Marcin's script on latest release, > > It will generate a new syscall.tbl. But I still use the old file - > > syscall.tbl and once all review got over I'll update syscall.tbl > > alone w.r.to the tip of the kernel. The impact of this thing, few > > of the system call won't work. > > > > Firoz Khan (3): > > powerpc: Replace NR_syscalls macro from asm/unistd.h > > powerpc: Add system call table generation support > > powerpc: uapi header and system call table file generation > > > > arch/powerpc/Makefile | 3 + > > arch/powerpc/include/asm/Kbuild | 3 + > > arch/powerpc/include/asm/unistd.h | 3 +- > > arch/powerpc/include/uapi/asm/Kbuild| 2 + > > arch/powerpc/include/uapi/asm/unistd.h | 391 > > +--- > > arch/powerpc/kernel/Makefile| 3 +- > > arch/powerpc/kernel/syscall_table_32.S | 9 + > > arch/powerpc/kernel/syscall_table_64.S | 17 ++ > > arch/powerpc/kernel/syscalls/Makefile | 51 > > arch/powerpc/kernel/syscalls/syscall_32.tbl | 378 > > +++ > > arch/powerpc/kernel/syscalls/syscall_64.tbl | 372 > > ++ > > arch/powerpc/kernel/syscalls/syscallhdr.sh | 37 +++ > > arch/powerpc/kernel/syscalls/syscalltbl.sh | 38 +++ > > arch/powerpc/kernel/systbl.S| 50 > > 14 files changed, 916 insertions(+), 441 deletions(-) > > create mode 100644 arch/powerpc/kernel/syscall_table_32.S > > create mode 100644 arch/powerpc/kernel/syscall_table_64.S > > create mode 100644 arch/powerpc/kernel/syscalls/Makefile > > create mode 100644 arch/powerpc/kernel/syscalls/syscall_32.tbl > > create mode 100644 arch/powerpc/kernel/syscalls/syscall_64.tbl > > create mode 100644 arch/powerpc/kernel/syscalls/syscallhdr.sh > > create mode 100644 arch/powerpc/kernel/syscalls/syscalltbl.sh > > delete mode 100644 arch/powerpc/kernel/systbl.S > > Hi, > > This patch series failed to boot in IBM Power8 box with below base commit and > built with ppc64le_defconfig, > https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=merge&id=183cbf93be88d1a4fb572e27b1e08aa0ad85 I think you are applied some old patch series. Could you please perform the boot test on powerpc v3 which I have sent few hour before. Thanks Firoz > > Complete boot log attached. > > > [1.577383] SGI XFS with ACLs, security attributes, no debug enabled > [1.581550] Bad kernel stack pointer 6e69 at c0e2ceec > [1.581558] Oops: Bad kernel stack pointer, sig: 6 [#1] > [1.581562] LE SMP NR_CPUS=2048 NUMA PowerNV > [1.581567] Modules linked in: > [1.581572] CPU: 3 PID: 1937 C