diff mbox series

[v3,5/6] parisc: wire up rseq system call

Message ID 1538975801-13735-6-git-send-email-firoz.khan@linaro.org (mailing list archive)
State Superseded
Headers show
Series System call table generation support | expand

Commit Message

Firoz Khan Oct. 8, 2018, 5:16 a.m. UTC
Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
---
 arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Helge Deller Oct. 8, 2018, 5:36 a.m. UTC | #1
On 08.10.2018 07:16, Firoz Khan wrote:
> Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
> ---
>  arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
> index 4e85293..4334bb7 100644
> --- a/arch/parisc/kernel/syscalls/syscall.tbl
> +++ b/arch/parisc/kernel/syscalls/syscall.tbl
> @@ -349,4 +349,5 @@
>  347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
>  348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
>  349     common  statx                           sys_statx
> -350	common  io_pgetevents			sys_io_pgetevents		compat_sys_io_pgetevents
> \ No newline at end of file
> +350	common  io_pgetevents			sys_io_pgetevents		compat_sys_io_pgetevents
> +351	common	rseq				sys_rseq			compat_sys_rseq

You can't add the rseq syscall for parisc yet.
It needs additional code in the kernel for parisc which hasn't been tested yet.
See my initial untested patch at https://patchwork.kernel.org/patch/10495209/

Helge
Firoz Khan Oct. 8, 2018, 5:52 a.m. UTC | #2
Hi Helge,

On Mon, 8 Oct 2018 at 11:11, Helge Deller <deller@gmx.de> wrote:
>
> On 08.10.2018 07:16, Firoz Khan wrote:
> > Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
> > ---
> >  arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
> > index 4e85293..4334bb7 100644
> > --- a/arch/parisc/kernel/syscalls/syscall.tbl
> > +++ b/arch/parisc/kernel/syscalls/syscall.tbl
> > @@ -349,4 +349,5 @@
> >  347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
> >  348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
> >  349     common  statx                           sys_statx
> > -350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> > \ No newline at end of file
> > +350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> > +351  common  rseq                            sys_rseq                        compat_sys_rseq
>
> You can't add the rseq syscall for parisc yet.
> It needs additional code in the kernel for parisc which hasn't been tested yet.
> See my initial untested patch at https://patchwork.kernel.org/patch/10495209/

Thanks for your update!

When I compiled the kernel I got below warnings.

<stdin>:696:2: warning: #warning syscall nfsservctl not implemented [-Wcpp]
<stdin>:1335:2: warning: #warning syscall rseq not implemented [-Wcpp]

I added an IGNORE entry nfsservctl in script/checksyscalls.sh because this
syscall is gone. But we definitely have to keep rseq entry on parisc
architecture.

I can ignore this patch currently as your patch not yet tested.

FYI, I have merged the system call table files based on our previous
discussions.
Please comment on that.

I would appreciate if you can perform a boot test without this patch
on the actual
platform.

Firoz

>
> Helge
Helge Deller Oct. 8, 2018, 6:06 a.m. UTC | #3
On 08.10.2018 07:52, Firoz Khan wrote:
> Hi Helge,
> 
> On Mon, 8 Oct 2018 at 11:11, Helge Deller <deller@gmx.de> wrote:
>>
>> On 08.10.2018 07:16, Firoz Khan wrote:
>>> Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
>>> ---
>>>  arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
>>> index 4e85293..4334bb7 100644
>>> --- a/arch/parisc/kernel/syscalls/syscall.tbl
>>> +++ b/arch/parisc/kernel/syscalls/syscall.tbl
>>> @@ -349,4 +349,5 @@
>>>  347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
>>>  348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
>>>  349     common  statx                           sys_statx
>>> -350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
>>> \ No newline at end of file
>>> +350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
>>> +351  common  rseq                            sys_rseq                        compat_sys_rseq
>>
>> You can't add the rseq syscall for parisc yet.
>> It needs additional code in the kernel for parisc which hasn't been tested yet.
>> See my initial untested patch at https://patchwork.kernel.org/patch/10495209/
> 
> Thanks for your update!
> 
> When I compiled the kernel I got below warnings.
> 
> <stdin>:696:2: warning: #warning syscall nfsservctl not implemented [-Wcpp]
> <stdin>:1335:2: warning: #warning syscall rseq not implemented [-Wcpp]
> 
> I added an IGNORE entry nfsservctl in script/checksyscalls.sh because this
> syscall is gone. But we definitely have to keep rseq entry on parisc
> architecture.

I prefer to keep the warning for rseq for now.
It reminds me that we still may want the rseq syscall.
If the warning is a problem, you may simply add the __IGNORE_rseq define. 

> I can ignore this patch currently as your patch not yet tested.
> 
> FYI, I have merged the system call table files based on our previous
> discussions.
> Please comment on that.

I'll do after testing.

Thanks!
Helge
 
> I would appreciate if you can perform a boot test without this patch
> on the actual
> platform.
> 
> Firoz
> 
>>
>> Helge
Firoz Khan Oct. 8, 2018, 6:48 a.m. UTC | #4
Hi Helge,

On Mon, 8 Oct 2018 at 11:36, Helge Deller <deller@gmx.de> wrote:
>
> On 08.10.2018 07:52, Firoz Khan wrote:
> > Hi Helge,
> >
> > On Mon, 8 Oct 2018 at 11:11, Helge Deller <deller@gmx.de> wrote:
> >>
> >> On 08.10.2018 07:16, Firoz Khan wrote:
> >>> Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
> >>> ---
> >>>  arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
> >>>  1 file changed, 2 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
> >>> index 4e85293..4334bb7 100644
> >>> --- a/arch/parisc/kernel/syscalls/syscall.tbl
> >>> +++ b/arch/parisc/kernel/syscalls/syscall.tbl
> >>> @@ -349,4 +349,5 @@
> >>>  347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
> >>>  348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
> >>>  349     common  statx                           sys_statx
> >>> -350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> >>> \ No newline at end of file
> >>> +350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> >>> +351  common  rseq                            sys_rseq                        compat_sys_rseq
> >>
> >> You can't add the rseq syscall for parisc yet.
> >> It needs additional code in the kernel for parisc which hasn't been tested yet.
> >> See my initial untested patch at https://patchwork.kernel.org/patch/10495209/
> >
> > Thanks for your update!
> >
> > When I compiled the kernel I got below warnings.
> >
> > <stdin>:696:2: warning: #warning syscall nfsservctl not implemented [-Wcpp]
> > <stdin>:1335:2: warning: #warning syscall rseq not implemented [-Wcpp]
> >
> > I added an IGNORE entry nfsservctl in script/checksyscalls.sh because this
> > syscall is gone. But we definitely have to keep rseq entry on parisc
> > architecture.
>
> I prefer to keep the warning for rseq for now.

I'm fine with this.

> It reminds me that we still may want the rseq syscall.
> If the warning is a problem, you may simply add the __IGNORE_rseq define.

But I still feel to keep an IGNORE entry, so once you test your patch; we can
remove IGNORE entry and update the syscall.tbl.

I would like you to take the call here :)

Thanks
Firoz

>
> > I can ignore this patch currently as your patch not yet tested.
> >
> > FYI, I have merged the system call table files based on our previous
> > discussions.
> > Please comment on that.
>
> I'll do after testing.
>
> Thanks!
> Helge
>
> > I would appreciate if you can perform a boot test without this patch
> > on the actual
> > platform.
> >
> > Firoz
> >
> >>
> >> Helge
>
Geert Uytterhoeven Oct. 8, 2018, 8:23 a.m. UTC | #5
Hi Firoz,

On Mon, Oct 8, 2018 at 8:49 AM Firoz Khan <firoz.khan@linaro.org> wrote:
> On Mon, 8 Oct 2018 at 11:36, Helge Deller <deller@gmx.de> wrote:
> > On 08.10.2018 07:52, Firoz Khan wrote:
> > > On Mon, 8 Oct 2018 at 11:11, Helge Deller <deller@gmx.de> wrote:
> > >> On 08.10.2018 07:16, Firoz Khan wrote:
> > >>> Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
> > >>> ---
> > >>>  arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
> > >>>  1 file changed, 2 insertions(+), 1 deletion(-)
> > >>>
> > >>> diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
> > >>> index 4e85293..4334bb7 100644
> > >>> --- a/arch/parisc/kernel/syscalls/syscall.tbl
> > >>> +++ b/arch/parisc/kernel/syscalls/syscall.tbl
> > >>> @@ -349,4 +349,5 @@
> > >>>  347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
> > >>>  348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
> > >>>  349     common  statx                           sys_statx
> > >>> -350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> > >>> \ No newline at end of file
> > >>> +350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> > >>> +351  common  rseq                            sys_rseq                        compat_sys_rseq
> > >>
> > >> You can't add the rseq syscall for parisc yet.
> > >> It needs additional code in the kernel for parisc which hasn't been tested yet.
> > >> See my initial untested patch at https://patchwork.kernel.org/patch/10495209/
> > >
> > > Thanks for your update!
> > >
> > > When I compiled the kernel I got below warnings.
> > >
> > > <stdin>:696:2: warning: #warning syscall nfsservctl not implemented [-Wcpp]
> > > <stdin>:1335:2: warning: #warning syscall rseq not implemented [-Wcpp]
> > >
> > > I added an IGNORE entry nfsservctl in script/checksyscalls.sh because this
> > > syscall is gone. But we definitely have to keep rseq entry on parisc
> > > architecture.
> >
> > I prefer to keep the warning for rseq for now.
>
> I'm fine with this.
>
> > It reminds me that we still may want the rseq syscall.
> > If the warning is a problem, you may simply add the __IGNORE_rseq define.
>
> But I still feel to keep an IGNORE entry, so once you test your patch; we can
> remove IGNORE entry and update the syscall.tbl.

If the warning is bogus (e.g. obsolete syscall), an IGNORE entry
should be added.
If the warning is due to a not-yet-implemented feature, IMHO it should not be
silenced, as that would give the false impression that the feature is
present and
implemented.

Gr{oetje,eeting}s,

                        Geert
Firoz Khan Oct. 8, 2018, 8:55 a.m. UTC | #6
Hi Geert,

On Mon, 8 Oct 2018 at 13:53, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>
> Hi Firoz,
>
> On Mon, Oct 8, 2018 at 8:49 AM Firoz Khan <firoz.khan@linaro.org> wrote:
> > On Mon, 8 Oct 2018 at 11:36, Helge Deller <deller@gmx.de> wrote:
> > > On 08.10.2018 07:52, Firoz Khan wrote:
> > > > On Mon, 8 Oct 2018 at 11:11, Helge Deller <deller@gmx.de> wrote:
> > > >> On 08.10.2018 07:16, Firoz Khan wrote:
> > > >>> Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
> > > >>> ---
> > > >>>  arch/parisc/kernel/syscalls/syscall.tbl | 3 ++-
> > > >>>  1 file changed, 2 insertions(+), 1 deletion(-)
> > > >>>
> > > >>> diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
> > > >>> index 4e85293..4334bb7 100644
> > > >>> --- a/arch/parisc/kernel/syscalls/syscall.tbl
> > > >>> +++ b/arch/parisc/kernel/syscalls/syscall.tbl
> > > >>> @@ -349,4 +349,5 @@
> > > >>>  347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
> > > >>>  348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
> > > >>>  349     common  statx                           sys_statx
> > > >>> -350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> > > >>> \ No newline at end of file
> > > >>> +350  common  io_pgetevents                   sys_io_pgetevents               compat_sys_io_pgetevents
> > > >>> +351  common  rseq                            sys_rseq                        compat_sys_rseq
> > > >>
> > > >> You can't add the rseq syscall for parisc yet.
> > > >> It needs additional code in the kernel for parisc which hasn't been tested yet.
> > > >> See my initial untested patch at https://patchwork.kernel.org/patch/10495209/
> > > >
> > > > Thanks for your update!
> > > >
> > > > When I compiled the kernel I got below warnings.
> > > >
> > > > <stdin>:696:2: warning: #warning syscall nfsservctl not implemented [-Wcpp]
> > > > <stdin>:1335:2: warning: #warning syscall rseq not implemented [-Wcpp]
> > > >
> > > > I added an IGNORE entry nfsservctl in script/checksyscalls.sh because this
> > > > syscall is gone. But we definitely have to keep rseq entry on parisc
> > > > architecture.
> > >
> > > I prefer to keep the warning for rseq for now.
> >
> > I'm fine with this.
> >
> > > It reminds me that we still may want the rseq syscall.
> > > If the warning is a problem, you may simply add the __IGNORE_rseq define.
> >
> > But I still feel to keep an IGNORE entry, so once you test your patch; we can
> > remove IGNORE entry and update the syscall.tbl.
>
> If the warning is bogus (e.g. obsolete syscall), an IGNORE entry
> should be added.

nfsservctl  look like an obsolete one, so I added an IGNORE entry in
script/checksyscalls.h

> If the warning is due to a not-yet-implemented feature, IMHO it should not be
> silenced, as that would give the false impression that the feature is
> present and
> implemented.

Helge had done some implementation for rseq but not tested. So we
either add an IGNORE
entry or leave the warning as it is.

Thanks
Firoz

>
> Gr{oetje,eeting}s,
>
>                         Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds
Geert Uytterhoeven Oct. 8, 2018, 8:58 a.m. UTC | #7
Hi Firoz,

On Mon, Oct 8, 2018 at 10:55 AM Firoz Khan <firoz.khan@linaro.org> wrote:
> On Mon, 8 Oct 2018 at 13:53, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > On Mon, Oct 8, 2018 at 8:49 AM Firoz Khan <firoz.khan@linaro.org> wrote:
> > > On Mon, 8 Oct 2018 at 11:36, Helge Deller <deller@gmx.de> wrote:
> > > > On 08.10.2018 07:52, Firoz Khan wrote:
> > > > > <stdin>:696:2: warning: #warning syscall nfsservctl not implemented [-Wcpp]
> > > > > <stdin>:1335:2: warning: #warning syscall rseq not implemented [-Wcpp]
> > > > >
> > > > > I added an IGNORE entry nfsservctl in script/checksyscalls.sh because this
> > > > > syscall is gone. But we definitely have to keep rseq entry on parisc
> > > > > architecture.
> > > >
> > > > I prefer to keep the warning for rseq for now.
> > >
> > > I'm fine with this.
> > >
> > > > It reminds me that we still may want the rseq syscall.
> > > > If the warning is a problem, you may simply add the __IGNORE_rseq define.
> > >
> > > But I still feel to keep an IGNORE entry, so once you test your patch; we can
> > > remove IGNORE entry and update the syscall.tbl.
> >
> > If the warning is bogus (e.g. obsolete syscall), an IGNORE entry
> > should be added.
>
> nfsservctl  look like an obsolete one, so I added an IGNORE entry in
> script/checksyscalls.h

Yes it is.

> > If the warning is due to a not-yet-implemented feature, IMHO it should not be
> > silenced, as that would give the false impression that the feature is
> > present and
> > implemented.
>
> Helge had done some implementation for rseq but not tested. So we
> either add an IGNORE
> entry or leave the warning as it is.

Personally, I prefer keeping the warning, for the above reason.

Gr{oetje,eeting}s,

                        Geert
Arnd Bergmann Oct. 8, 2018, 9:11 a.m. UTC | #8
On Mon, Oct 8, 2018 at 10:58 AM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> On Mon, Oct 8, 2018 at 10:55 AM Firoz Khan <firoz.khan@linaro.org> wrote:
> > On Mon, 8 Oct 2018 at 13:53, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > > On Mon, Oct 8, 2018 at 8:49 AM Firoz Khan <firoz.khan@linaro.org> wrote:
> > > If the warning is due to a not-yet-implemented feature, IMHO it should not be
> > > silenced, as that would give the false impression that the feature is
> > > present and
> > > implemented.
> >
> > Helge had done some implementation for rseq but not tested. So we
> > either add an IGNORE
> > entry or leave the warning as it is.
>
> Personally, I prefer keeping the warning, for the above reason.

Agreed, there is no need to patch this now if Helge is already working
on the correct fix. Same for the other architectures. If there are architectures
that have multiple missing syscalls, we could add a line with a comment
for rseq but not actually define it, like

 348     common  pwritev2                     sys_pwritev2
       compat_sys_pwritev2
 349     common  statx                           sys_statx
+350    common  io_pgetevents            sys_io_pgetevents
  compat_sys_io_pgetevents
+# rseq requires an arch specific implementation
+# 351    common  rseq                          sys_rseq
         compat_sys_rseq */
+352     common  open_tree                 sys_open_tree
+353     common  move_mount             sys_move_mount
+354     common  fsopen                       sys_fsopen

      Arnd
diff mbox series

Patch

diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
index 4e85293..4334bb7 100644
--- a/arch/parisc/kernel/syscalls/syscall.tbl
+++ b/arch/parisc/kernel/syscalls/syscall.tbl
@@ -349,4 +349,5 @@ 
 347     common  preadv2                         sys_preadv2                     compat_sys_preadv2
 348     common  pwritev2                        sys_pwritev2                    compat_sys_pwritev2
 349     common  statx                           sys_statx
-350	common  io_pgetevents			sys_io_pgetevents		compat_sys_io_pgetevents
\ No newline at end of file
+350	common  io_pgetevents			sys_io_pgetevents		compat_sys_io_pgetevents
+351	common	rseq				sys_rseq			compat_sys_rseq