Message ID | 470d2036c006c525b5dd78b4c7fb860ee521aafd.1565398514.git.alistair.francis@wdc.com |
---|---|
State | New |
Headers | show |
Series | RISC-V glibc port for the 32-bit | expand |
On Fri, Aug 9, 2019 at 6:04 PM Alistair Francis <alistair.francis@wdc.com> wrote: > > Signed-off-by: Alistair Francis <alistair.francis@wdc.com> > --- > sysdeps/unix/sysv/linux/syscalls.list | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list > index e374f97b5f8..4844d1a9a3b 100644 > --- a/sysdeps/unix/sysv/linux/syscalls.list > +++ b/sysdeps/unix/sysv/linux/syscalls.list > @@ -5,7 +5,7 @@ alarm - alarm i:i alarm > bdflush EXTRA bdflush i:ii __compat_bdflush bdflush@GLIBC_2.0:GLIBC_2.23 > capget EXTRA capget i:pp capget > capset EXTRA capset i:pp capset > -clock_adjtime EXTRA clock_adjtime i:ip clock_adjtime > +clock_adjtime EXTRA clock_adjtime64 i:ip clock_adjtime > create_module EXTRA create_module 3 __compat_create_module create_module@GLIBC_2.0:GLIBC_2.23 > delete_module EXTRA delete_module 3 delete_module > epoll_create EXTRA epoll_create i:i epoll_create > @@ -52,7 +52,7 @@ sched_getp - sched_getparam i:ip __sched_getparam sched_getparam > sched_gets - sched_getscheduler i:i __sched_getscheduler sched_getscheduler > sched_primax - sched_get_priority_max i:i __sched_get_priority_max sched_get_priority_max > sched_primin - sched_get_priority_min i:i __sched_get_priority_min sched_get_priority_min > -sched_rr_gi - sched_rr_get_interval i:ip __sched_rr_get_interval sched_rr_get_interval > +sched_rr_gi - sched_rr_get_interval_time64 i:ip __sched_rr_get_interval sched_rr_get_interval > sched_setp - sched_setparam i:ip __sched_setparam sched_setparam > sched_sets - sched_setscheduler i:iip __sched_setscheduler sched_setscheduler > sched_yield - sched_yield i: __sched_yield sched_yield > @@ -96,8 +96,8 @@ fremovexattr - fremovexattr i:is fremovexattr > mq_setattr - mq_getsetattr i:ipp mq_setattr > > timerfd_create EXTRA timerfd_create i:ii timerfd_create > -timerfd_settime EXTRA timerfd_settime i:iipp timerfd_settime > -timerfd_gettime EXTRA timerfd_gettime i:ip timerfd_gettime > +timerfd_settime EXTRA timerfd_settime64 i:iipp timerfd_settime > +timerfd_gettime EXTRA timerfd_gettime64 i:ip timerfd_gettime Does anyone have ideas/opinions on how to handle this correctly? Alistair > > fanotify_init EXTRA fanotify_init i:ii fanotify_init > > -- > 2.22.0 >
* Alistair Francis: > On Fri, Aug 9, 2019 at 6:04 PM Alistair Francis > <alistair.francis@wdc.com> wrote: >> >> Signed-off-by: Alistair Francis <alistair.francis@wdc.com> >> --- >> sysdeps/unix/sysv/linux/syscalls.list | 8 ++++---- >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list >> index e374f97b5f8..4844d1a9a3b 100644 >> --- a/sysdeps/unix/sysv/linux/syscalls.list >> +++ b/sysdeps/unix/sysv/linux/syscalls.list >> @@ -5,7 +5,7 @@ alarm - alarm i:i alarm >> bdflush EXTRA bdflush i:ii __compat_bdflush bdflush@GLIBC_2.0:GLIBC_2.23 >> capget EXTRA capget i:pp capget >> capset EXTRA capset i:pp capset >> -clock_adjtime EXTRA clock_adjtime i:ip clock_adjtime >> +clock_adjtime EXTRA clock_adjtime64 i:ip clock_adjtime >> create_module EXTRA create_module 3 __compat_create_module create_module@GLIBC_2.0:GLIBC_2.23 >> delete_module EXTRA delete_module 3 delete_module >> epoll_create EXTRA epoll_create i:i epoll_create >> @@ -52,7 +52,7 @@ sched_getp - sched_getparam i:ip __sched_getparam sched_getparam >> sched_gets - sched_getscheduler i:i __sched_getscheduler sched_getscheduler >> sched_primax - sched_get_priority_max i:i __sched_get_priority_max sched_get_priority_max >> sched_primin - sched_get_priority_min i:i __sched_get_priority_min sched_get_priority_min >> -sched_rr_gi - sched_rr_get_interval i:ip __sched_rr_get_interval sched_rr_get_interval >> +sched_rr_gi - sched_rr_get_interval_time64 i:ip __sched_rr_get_interval sched_rr_get_interval >> sched_setp - sched_setparam i:ip __sched_setparam sched_setparam >> sched_sets - sched_setscheduler i:iip __sched_setscheduler sched_setscheduler >> sched_yield - sched_yield i: __sched_yield sched_yield >> @@ -96,8 +96,8 @@ fremovexattr - fremovexattr i:is fremovexattr >> mq_setattr - mq_getsetattr i:ipp mq_setattr >> >> timerfd_create EXTRA timerfd_create i:ii timerfd_create >> -timerfd_settime EXTRA timerfd_settime i:iipp timerfd_settime >> -timerfd_gettime EXTRA timerfd_gettime i:ip timerfd_gettime >> +timerfd_settime EXTRA timerfd_settime64 i:iipp timerfd_settime >> +timerfd_gettime EXTRA timerfd_gettime64 i:ip timerfd_gettime > > Does anyone have ideas/opinions on how to handle this correctly? As in many of the other cases, you can add this to <sysdep.h>: #define __NR_timerfd_settime __NR_timerfd_settime64 #define __NR_timerfd_gettime __NR_timerfd_gettime64 Once a second such port arrives, we can factor out these common system call renamings into a generic-64 subdirectory. I still think it's just wrong that the kernel doesn't provide these names as part of the UAPI headers. Thanks, Florian
On Wed, Aug 14, 2019 at 11:57 AM Florian Weimer <fweimer@redhat.com> wrote: > > * Alistair Francis: > > > On Fri, Aug 9, 2019 at 6:04 PM Alistair Francis > > <alistair.francis@wdc.com> wrote: > >> > >> Signed-off-by: Alistair Francis <alistair.francis@wdc.com> > >> --- > >> sysdeps/unix/sysv/linux/syscalls.list | 8 ++++---- > >> 1 file changed, 4 insertions(+), 4 deletions(-) > >> > >> diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list > >> index e374f97b5f8..4844d1a9a3b 100644 > >> --- a/sysdeps/unix/sysv/linux/syscalls.list > >> +++ b/sysdeps/unix/sysv/linux/syscalls.list > >> @@ -5,7 +5,7 @@ alarm - alarm i:i alarm > >> bdflush EXTRA bdflush i:ii __compat_bdflush bdflush@GLIBC_2.0:GLIBC_2.23 > >> capget EXTRA capget i:pp capget > >> capset EXTRA capset i:pp capset > >> -clock_adjtime EXTRA clock_adjtime i:ip clock_adjtime > >> +clock_adjtime EXTRA clock_adjtime64 i:ip clock_adjtime > >> create_module EXTRA create_module 3 __compat_create_module create_module@GLIBC_2.0:GLIBC_2.23 > >> delete_module EXTRA delete_module 3 delete_module > >> epoll_create EXTRA epoll_create i:i epoll_create > >> @@ -52,7 +52,7 @@ sched_getp - sched_getparam i:ip __sched_getparam sched_getparam > >> sched_gets - sched_getscheduler i:i __sched_getscheduler sched_getscheduler > >> sched_primax - sched_get_priority_max i:i __sched_get_priority_max sched_get_priority_max > >> sched_primin - sched_get_priority_min i:i __sched_get_priority_min sched_get_priority_min > >> -sched_rr_gi - sched_rr_get_interval i:ip __sched_rr_get_interval sched_rr_get_interval > >> +sched_rr_gi - sched_rr_get_interval_time64 i:ip __sched_rr_get_interval sched_rr_get_interval > >> sched_setp - sched_setparam i:ip __sched_setparam sched_setparam > >> sched_sets - sched_setscheduler i:iip __sched_setscheduler sched_setscheduler > >> sched_yield - sched_yield i: __sched_yield sched_yield > >> @@ -96,8 +96,8 @@ fremovexattr - fremovexattr i:is fremovexattr > >> mq_setattr - mq_getsetattr i:ipp mq_setattr > >> > >> timerfd_create EXTRA timerfd_create i:ii timerfd_create > >> -timerfd_settime EXTRA timerfd_settime i:iipp timerfd_settime > >> -timerfd_gettime EXTRA timerfd_gettime i:ip timerfd_gettime > >> +timerfd_settime EXTRA timerfd_settime64 i:iipp timerfd_settime > >> +timerfd_gettime EXTRA timerfd_gettime64 i:ip timerfd_gettime > > > > Does anyone have ideas/opinions on how to handle this correctly? > > As in many of the other cases, you can add this to <sysdep.h>: > > #define __NR_timerfd_settime __NR_timerfd_settime64 > #define __NR_timerfd_gettime __NR_timerfd_gettime64 > > Once a second such port arrives, we can factor out these common system > call renamings into a generic-64 subdirectory. Great! That's a straightforward fix. Alistair > > I still think it's just wrong that the kernel doesn't provide these > names as part of the UAPI headers. > > Thanks, > Florian
* Alistair Francis: > On Wed, Aug 14, 2019 at 11:57 AM Florian Weimer <fweimer@redhat.com> wrote: >> >> * Alistair Francis: >> >> > On Fri, Aug 9, 2019 at 6:04 PM Alistair Francis >> > <alistair.francis@wdc.com> wrote: >> >> >> >> Signed-off-by: Alistair Francis <alistair.francis@wdc.com> >> >> --- >> >> sysdeps/unix/sysv/linux/syscalls.list | 8 ++++---- >> >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> >> >> diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list >> >> index e374f97b5f8..4844d1a9a3b 100644 >> >> --- a/sysdeps/unix/sysv/linux/syscalls.list >> >> +++ b/sysdeps/unix/sysv/linux/syscalls.list >> >> @@ -5,7 +5,7 @@ alarm - alarm i:i alarm >> >> bdflush EXTRA bdflush i:ii __compat_bdflush bdflush@GLIBC_2.0:GLIBC_2.23 >> >> capget EXTRA capget i:pp capget >> >> capset EXTRA capset i:pp capset >> >> -clock_adjtime EXTRA clock_adjtime i:ip clock_adjtime >> >> +clock_adjtime EXTRA clock_adjtime64 i:ip clock_adjtime >> >> create_module EXTRA create_module 3 __compat_create_module create_module@GLIBC_2.0:GLIBC_2.23 >> >> delete_module EXTRA delete_module 3 delete_module >> >> epoll_create EXTRA epoll_create i:i epoll_create >> >> @@ -52,7 +52,7 @@ sched_getp - sched_getparam i:ip __sched_getparam sched_getparam >> >> sched_gets - sched_getscheduler i:i __sched_getscheduler sched_getscheduler >> >> sched_primax - sched_get_priority_max i:i __sched_get_priority_max sched_get_priority_max >> >> sched_primin - sched_get_priority_min i:i __sched_get_priority_min sched_get_priority_min >> >> -sched_rr_gi - sched_rr_get_interval i:ip __sched_rr_get_interval sched_rr_get_interval >> >> +sched_rr_gi - sched_rr_get_interval_time64 i:ip __sched_rr_get_interval sched_rr_get_interval >> >> sched_setp - sched_setparam i:ip __sched_setparam sched_setparam >> >> sched_sets - sched_setscheduler i:iip __sched_setscheduler sched_setscheduler >> >> sched_yield - sched_yield i: __sched_yield sched_yield >> >> @@ -96,8 +96,8 @@ fremovexattr - fremovexattr i:is fremovexattr >> >> mq_setattr - mq_getsetattr i:ipp mq_setattr >> >> >> >> timerfd_create EXTRA timerfd_create i:ii timerfd_create >> >> -timerfd_settime EXTRA timerfd_settime i:iipp timerfd_settime >> >> -timerfd_gettime EXTRA timerfd_gettime i:ip timerfd_gettime >> >> +timerfd_settime EXTRA timerfd_settime64 i:iipp timerfd_settime >> >> +timerfd_gettime EXTRA timerfd_gettime64 i:ip timerfd_gettime >> > >> > Does anyone have ideas/opinions on how to handle this correctly? >> >> As in many of the other cases, you can add this to <sysdep.h>: >> >> #define __NR_timerfd_settime __NR_timerfd_settime64 >> #define __NR_timerfd_gettime __NR_timerfd_gettime64 >> >> Once a second such port arrives, we can factor out these common system >> call renamings into a generic-64 subdirectory. > > Great! That's a straightforward fix. Note that getting this to work on legacy architectures (which have a 32-bit time_t) today obviously requires vastly different steps. I do not know if completing this work is a requirement for acceptance of the RV32 port (I don't think it should be, but others might disagree). Thanks, Florian
diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list index e374f97b5f8..4844d1a9a3b 100644 --- a/sysdeps/unix/sysv/linux/syscalls.list +++ b/sysdeps/unix/sysv/linux/syscalls.list @@ -5,7 +5,7 @@ alarm - alarm i:i alarm bdflush EXTRA bdflush i:ii __compat_bdflush bdflush@GLIBC_2.0:GLIBC_2.23 capget EXTRA capget i:pp capget capset EXTRA capset i:pp capset -clock_adjtime EXTRA clock_adjtime i:ip clock_adjtime +clock_adjtime EXTRA clock_adjtime64 i:ip clock_adjtime create_module EXTRA create_module 3 __compat_create_module create_module@GLIBC_2.0:GLIBC_2.23 delete_module EXTRA delete_module 3 delete_module epoll_create EXTRA epoll_create i:i epoll_create @@ -52,7 +52,7 @@ sched_getp - sched_getparam i:ip __sched_getparam sched_getparam sched_gets - sched_getscheduler i:i __sched_getscheduler sched_getscheduler sched_primax - sched_get_priority_max i:i __sched_get_priority_max sched_get_priority_max sched_primin - sched_get_priority_min i:i __sched_get_priority_min sched_get_priority_min -sched_rr_gi - sched_rr_get_interval i:ip __sched_rr_get_interval sched_rr_get_interval +sched_rr_gi - sched_rr_get_interval_time64 i:ip __sched_rr_get_interval sched_rr_get_interval sched_setp - sched_setparam i:ip __sched_setparam sched_setparam sched_sets - sched_setscheduler i:iip __sched_setscheduler sched_setscheduler sched_yield - sched_yield i: __sched_yield sched_yield @@ -96,8 +96,8 @@ fremovexattr - fremovexattr i:is fremovexattr mq_setattr - mq_getsetattr i:ipp mq_setattr timerfd_create EXTRA timerfd_create i:ii timerfd_create -timerfd_settime EXTRA timerfd_settime i:iipp timerfd_settime -timerfd_gettime EXTRA timerfd_gettime i:ip timerfd_gettime +timerfd_settime EXTRA timerfd_settime64 i:iipp timerfd_settime +timerfd_gettime EXTRA timerfd_gettime64 i:ip timerfd_gettime fanotify_init EXTRA fanotify_init i:ii fanotify_init
Signed-off-by: Alistair Francis <alistair.francis@wdc.com> --- sysdeps/unix/sysv/linux/syscalls.list | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)