[LTP] [PATCH] lapi/syscalls: Add epoll_create for aarch64.in

Jan Stancek jstancek@redhat.com
Wed Oct 27 11:44:10 CEST 2021


On Wed, Oct 27, 2021 at 11:36 AM zhaogongyi <zhaogongyi@huawei.com> wrote:
>
> Hi,
>
>
>
> >
> > On Wed, Oct 27, 2021 at 5:28 AM zhaogongyi <zhaogongyi@huawei.com>
> > wrote:
> > >
> > > Hi,
> > >
> > > >
> > > > On Tue, Oct 26, 2021 at 9:49 AM Zhao Gongyi
> > <zhaogongyi@huawei.com>
> > > > wrote:
> > > > >
> > > > > Add epoll_create for aarch64.in and modify the value of epoll_ctl
> > > > > for aarch64.in. Otherwise, the testcase
> > > > > epoll_create01/epoll_create02 will fail.
> > > > >
> > > > > Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
> > > > > ---
> > > > >  include/lapi/syscalls/aarch64.in | 3 ++-
> > > > >  1 file changed, 2 insertions(+), 1 deletion(-)
> > > > >
> > > > > diff --git a/include/lapi/syscalls/aarch64.in
> > > > > b/include/lapi/syscalls/aarch64.in
> > > > > index a47185954..e9023a1d0 100644
> > > > > --- a/include/lapi/syscalls/aarch64.in
> > > > > +++ b/include/lapi/syscalls/aarch64.in
> > > > > @@ -19,7 +19,6 @@ getcwd 17
> > > > >  lookup_dcookie 18
> > > > >  eventfd2 19
> > > > >  epoll_create1 20
> > > > > -epoll_ctl 21
> > > > >  epoll_pwait 22
> > > > >  dup 23
> > > > >  dup3 24
> > > > > @@ -243,6 +242,8 @@ rt_tgsigqueueinfo 240  perf_event_open
> > 241
> > > > >  accept4 242
> > > > >  recvmmsg 243
> > > > > +epoll_create 250
> > > > > +epoll_ctl 251
> > > >
> > > > These values are for 32 bit only syscalls. Won't this break 64 bit?
> > >
> > > Yes, these values are for 32 bit only syscalls, the syscall epoll_create is
> > not support for 64bit arm64.
> >
> > Right, adding epoll_create is OK, but changing epoll_ctl would break 64bit
> > if there were any users of __NR_epoll_ctl.
>
> If we do not consider the running of 32bit program on arm64, we need to remove __NR_epoll_ctl.
>
> And the testcase using __NR_epoll_ctl will fail, is it a problem to be resolved?

There are no testcases currently using __NR_epoll_ctl, but to avoid
this potential
issues in future, we can remove it. Existing testcases use libc epoll_ctl().

>
> >
> > >
> > > Reference to man 2 epoll_create, we can see that
> > epoll_create/epoll_create1 are supported If only we include the header
> > file sys/epoll.h.
> > >
> > > Is it better that we call epoll_create replace to syscall
> > __NR_epoll_create since some plateform not support it?
> >
> > I think so. We already use epoll_create() in other tests, so this looks like
> > simplest solution for all arches.
> >
> > >
> > >
> > > Thanks for you review!
> > >
> > > >
> > > > >  wait4 260
> > > > >  prlimit64 261
> > > > >  fanotify_init 262
> > > > > --
> > > > > 2.17.1
> > > > >
> > > > >
> > > > > --
> > > > > Mailing list info: https://lists.linux.it/listinfo/ltp
> > > > >
> > >
>



More information about the ltp mailing list