This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] s390: optimize syscall function
- From: Martin Schwidefsky <schwidefsky at de dot ibm dot com>
- To: Zack Weinberg <zackw at panix dot com>
- Cc: Christian Borntraeger <borntraeger at de dot ibm dot com>, Stefan Liebler <stli at linux dot vnet dot ibm dot com>, Andreas Krebbel <krebbel at linux dot vnet dot ibm dot com>, GNU C Library <libc-alpha at sourceware dot org>
- Date: Mon, 12 Jun 2017 15:57:01 +0200
- Subject: Re: [PATCH] s390: optimize syscall function
- Authentication-results: sourceware.org; auth=none
- References: <1497007747-191015-1-git-send-email-borntraeger@de.ibm.com> <20170612074958.71090d0f@mschwideX1> <CAKCAbMiCnG0SaWUW0r5ndhGyjf3FmwGgXQbSqmuVtU96GA_9og@mail.gmail.com>
On Mon, 12 Jun 2017 08:06:36 -0400
Zack Weinberg <zackw@panix.com> wrote:
> On Mon, Jun 12, 2017 at 1:49 AM, Martin Schwidefsky
> <schwidefsky@de.ibm.com> wrote:
> > On Fri, 9 Jun 2017 13:29:07 +0200
> > Christian Borntraeger <borntraeger@de.ibm.com> wrote:
> >
> >> Since kernel 2.6.0 all Linux version accept the system call number
> >> in register 1 for svc 0. There is no need to have special handling
> >> that uses EX for system calls < 256. This will simplify and speed
> >> up that code.
> >>
> >> A microbenchmark doing "syscall(__NR_getpid);" in a loops gets faster
> >> by ~12%.
> >>
> >> * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Simplify
> >> code by always using SVC 0 instead of EX.
> >> * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
> >>
> >> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
> >> ---
> >> sysdeps/unix/sysv/linux/s390/s390-32/syscall.S | 12 +++---------
> >> sysdeps/unix/sysv/linux/s390/s390-64/syscall.S | 12 +++---------
> >> 2 files changed, 6 insertions(+), 18 deletions(-)
> >
> > NAK. E.g. this from glibc:
> >
> > sysdeps/unix/sysv/linux/s390/s390-64:
>
> Uh, I believe Christian was proposing to change the exact code you are
> quoting. Did you think he was proposing to remove backward
> compatibility for EX from the kernel-side syscall path?
Indeed, I was thinking too much about the kernel side of things.
--
blue skies,
Martin.
"Reality continues to ruin my life." - Calvin.