qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Aleksandar Markovic <aleksandar.m.mail@gmail.com>
To: Andrew Kelley <andrew@ziglang.org>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	Laurent Vivier <laurent@vivier.eu>
Subject: Re: [PATCH] enable translating statx syscalls on more arches
Date: Tue, 12 Nov 2019 09:27:30 +0100	[thread overview]
Message-ID: <CAL1e-=hf6Z4cdZ-kfY=vg6fXWLX1Vo9R604AvDwxj7rFoXB2Tg@mail.gmail.com> (raw)
In-Reply-To: <CAL1e-=iemtSNCyS1O6vfe1QL5EYP5tbKhZPAYJF8YQ4USPMFww@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 10099 bytes --]

On Tuesday, November 12, 2019, Aleksandar Markovic <
aleksandar.m.mail@gmail.com> wrote:

>
>
> On Tuesday, November 12, 2019, Andrew Kelley <andrew@ziglang.org> wrote:
>
>> ping
>>
>> On 10/16/19 5:01 PM, Andrew Kelley wrote:
>> > Signed-off-by: Andrew Kelley <andrew@ziglang.org>
>> > ---
>> >  linux-user/aarch64/syscall_nr.h | 13 ++++++++++
>> >  linux-user/arm/syscall_nr.h     | 38 ++++++++++++++++++++++++++++
>> >  linux-user/i386/syscall_nr.h    | 43 ++++++++++++++++++++++++++++++++
>> >  linux-user/mips/cpu_loop.c      |  6 +++++
>> >  linux-user/ppc/syscall_nr.h     | 44 +++++++++++++++++++++++++++++++++
>> >  5 files changed, 144 insertions(+)
>> >
>
>
> Hello, Andrew.
>
> I support your change, but its title is not appropriate. It should have
> been "linux-user: Update system call code numbers for some targets" or
> similar. Also, you should have mentioned Laurent Vivier in cc. Also, are
> other targets updated? If not, I think you should include them as well.
> Additionally, what was the version (or commit number) of the kernel uou
> used as the reference?
>
> Thanks, Aleksandar
>
>
>
Forwarding to Laurent.

Laurent, can this or similar patch be integrated into 4.2? It can be viewed
as a bug fix, in a way.

Aleksandar


>
>
>> > diff --git a/linux-user/aarch64/syscall_nr.h
>> > b/linux-user/aarch64/syscall_nr.h
>> > index f00ffd7fb8..4e8d0bbb15 100644
>> > --- a/linux-user/aarch64/syscall_nr.h
>> > +++ b/linux-user/aarch64/syscall_nr.h
>> > @@ -276,5 +276,18 @@
>> >  #define TARGET_NR_membarrier 283
>> >  #define TARGET_NR_mlock2 284
>> >  #define TARGET_NR_copy_file_range 285
>> > +#define TARGET_NR_preadv2 286
>> > +#define TARGET_NR_pwritev2 287
>> > +#define TARGET_NR_pkey_mprotect 288
>> > +#define TARGET_NR_pkey_alloc 289
>> > +#define TARGET_NR_pkey_free 290
>> > +#define TARGET_NR_statx 291
>> > +#define TARGET_NR_io_pgetevents 292
>> > +#define TARGET_NR_rseq 293
>> > +#define TARGET_NR_kexec_file_load 294
>> > +#define TARGET_NR_pidfd_send_signal 424
>> > +#define TARGET_NR_io_uring_setup 425
>> > +#define TARGET_NR_io_uring_enter 426
>> > +#define TARGET_NR_io_uring_register 427
>> >
>> >  #endif
>> > diff --git a/linux-user/arm/syscall_nr.h b/linux-user/arm/syscall_nr.h
>> > index e7eda0d766..20afa3992a 100644
>> > --- a/linux-user/arm/syscall_nr.h
>> > +++ b/linux-user/arm/syscall_nr.h
>> > @@ -400,4 +400,42 @@
>> >  #define TARGET_NR_membarrier                   (389)
>> >  #define TARGET_NR_mlock2                       (390)
>> >
>> > +#define TARGET_NR_copy_file_range              (391)
>> > +#define TARGET_NR_preadv2                      (392)
>> > +#define TARGET_NR_pwritev2                     (393)
>> > +#define TARGET_NR_pkey_mprotect                (394)
>> > +#define TARGET_NR_pkey_alloc                   (395)
>> > +#define TARGET_NR_pkey_free                    (396)
>> > +#define TARGET_NR_statx                        (397)
>> > +#define TARGET_NR_rseq                         (398)
>> > +#define TARGET_NR_io_pgetevents                (399)
>> > +#define TARGET_NR_migrate_pages                (400)
>> > +
>> > +#define TARGET_NR_kexec_file_load              (401)
>> > +#define TARGET_NR_clock_gettime64              (403)
>> > +#define TARGET_NR_clock_settime64              (404)
>> > +#define TARGET_NR_clock_adjtime64              (405)
>> > +#define TARGET_NR_clock_getres_time64          (406)
>> > +#define TARGET_NR_clock_nanosleep_time64       (407)
>> > +#define TARGET_NR_timer_gettime64              (408)
>> > +#define TARGET_NR_timer_settime64              (409)
>> > +#define TARGET_NR_timerfd_gettime64            (410)
>> > +
>> > +#define TARGET_NR_timerfd_settime64            (411)
>> > +#define TARGET_NR_utimensat_time64             (412)
>> > +#define TARGET_NR_pselect6_time64              (413)
>> > +#define TARGET_NR_ppoll_time64                 (414)
>> > +#define TARGET_NR_io_pgetevents_time64         (416)
>> > +#define TARGET_NR_recvmmsg_time64              (417)
>> > +#define TARGET_NR_mq_timedsend_time64          (418)
>> > +#define TARGET_NR_mq_timedreceive_time64       (419)
>> > +#define TARGET_NR_semtimedop_time64            (420)
>> > +
>> > +#define TARGET_NR_rt_sigtimedwait_time64       (421)
>> > +#define TARGET_NR_futex_time64                 (422)
>> > +#define TARGET_NR_sched_rr_get_interval_time64 (423)
>> > +#define TARGET_NR_pidfd_send_signal            (424)
>> > +#define TARGET_NR_io_uring_setup               (425)
>> > +#define TARGET_NR_io_uring_enter               (426)
>> > +#define TARGET_NR_io_uring_register            (427)
>> >  #endif
>> > diff --git a/linux-user/i386/syscall_nr.h b/linux-user/i386/syscall_nr.h
>> > index 3234ec21c6..e641674daf 100644
>> > --- a/linux-user/i386/syscall_nr.h
>> > +++ b/linux-user/i386/syscall_nr.h
>> > @@ -383,5 +383,48 @@
>> >  #define TARGET_NR_membarrier            375
>> >  #define TARGET_NR_mlock2                376
>> >  #define TARGET_NR_copy_file_range       377
>> > +#define TARGET_NR_preadv2 378
>> > +#define TARGET_NR_pwritev2 379
>> > +#define TARGET_NR_pkey_mprotect 380
>> > +#define TARGET_NR_pkey_alloc 381
>> > +#define TARGET_NR_pkey_free 382
>> > +#define TARGET_NR_statx 383
>> > +#define TARGET_NR_arch_prctl 384
>> > +#define TARGET_NR_io_pgetevents 385
>> > +#define TARGET_NR_rseq 386
>> > +#define TARGET_NR_semget 393
>> > +#define TARGET_NR_semctl 394
>> > +#define TARGET_NR_shmget 395
>> > +#define TARGET_NR_shmctl 396
>> > +#define TARGET_NR_shmat 397
>> > +#define TARGET_NR_shmdt 398
>> > +#define TARGET_NR_msgget 399
>> > +#define TARGET_NR_msgsnd 400
>> > +#define TARGET_NR_msgrcv 401
>> > +#define TARGET_NR_msgctl 402
>> > +#define TARGET_NR_clock_gettime64 403
>> > +#define TARGET_NR_clock_settime64 404
>> > +#define TARGET_NR_clock_adjtime64 405
>> > +#define TARGET_NR_clock_getres_time64 406
>> > +#define TARGET_NR_clock_nanosleep_time64 407
>> > +#define TARGET_NR_timer_gettime64 408
>> > +#define TARGET_NR_timer_settime64 409
>> > +#define TARGET_NR_timerfd_gettime64 410
>> > +#define TARGET_NR_timerfd_settime64 411
>> > +#define TARGET_NR_utimensat_time64 412
>> > +#define TARGET_NR_pselect6_time64 413
>> > +#define TARGET_NR_ppoll_time64 414
>> > +#define TARGET_NR_io_pgetevents_time64 416
>> > +#define TARGET_NR_recvmmsg_time64 417
>> > +#define TARGET_NR_mq_timedsend_time64 418
>> > +#define TARGET_NR_mq_timedreceive_time64 419
>> > +#define TARGET_NR_semtimedop_time64 420
>> > +#define TARGET_NR_rt_sigtimedwait_time64 421
>> > +#define TARGET_NR_futex_time64 422
>> > +#define TARGET_NR_sched_rr_get_interval_time64 423
>> > +#define TARGET_NR_pidfd_send_signal 424
>> > +#define TARGET_NR_io_uring_setup 425
>> > +#define TARGET_NR_io_uring_enter 426
>> > +#define TARGET_NR_io_uring_register 427
>> >
>> >  #endif
>> > diff --git a/linux-user/mips/cpu_loop.c b/linux-user/mips/cpu_loop.c
>> > index 39915b3fde..044a00f531 100644
>> > --- a/linux-user/mips/cpu_loop.c
>> > +++ b/linux-user/mips/cpu_loop.c
>> > @@ -390,6 +390,12 @@ static const uint8_t mips_syscall_args[] = {
>> >          MIPS_SYS(sys_copy_file_range, 6) /* 360 */
>> >          MIPS_SYS(sys_preadv2, 6)
>> >          MIPS_SYS(sys_pwritev2, 6)
>> > +        MIPS_SYS(sys_pkey_mprotect, 4)
>> > +        MIPS_SYS(sys_pkey_alloc, 2)
>> > +        MIPS_SYS(sys_pkey_free, 1)
>> > +        MIPS_SYS(sys_statx, 5)
>> > +        MIPS_SYS(sys_rseq, 4)
>> > +        MIPS_SYS(sys_io_pgetevents, 5)
>> >  };
>> >  #  undef MIPS_SYS
>> >  # endif /* O32 */
>> > diff --git a/linux-user/ppc/syscall_nr.h b/linux-user/ppc/syscall_nr.h
>> > index b57a07b931..eea4056e3d 100644
>> > --- a/linux-user/ppc/syscall_nr.h
>> > +++ b/linux-user/ppc/syscall_nr.h
>> > @@ -398,5 +398,49 @@
>> >  #define TARGET_NR_shmget                376
>> >  #define TARGET_NR_shmctl                377
>> >  #define TARGET_NR_mlock2                378
>> > +#define TARGET_NR_copy_file_range       379
>> > +#define TARGET_NR_preadv2               380
>> > +#define TARGET_NR_pwritev2              381
>> > +#define TARGET_NR_kexec_file_load       382
>> > +#define TARGET_NR_statx                 383
>> > +#define TARGET_NR_pkey_alloc            384
>> > +#define TARGET_NR_pkey_free             385
>> > +#define TARGET_NR_pkey_mprotect         386
>> > +#define TARGET_NR_rseq                  387
>> > +#define TARGET_NR_io_pgetevents         388
>> > +#define TARGET_NR_semget                393
>> > +#define TARGET_NR_semctl                394
>> > +#define TARGET_NR_shmget                395
>> > +#define TARGET_NR_shmctl                396
>> > +#define TARGET_NR_shmat                 397
>> > +#define TARGET_NR_shmdt                 398
>> > +#define TARGET_NR_msgget                399
>> > +#define TARGET_NR_msgsnd                400
>> > +#define TARGET_NR_msgrcv                401
>> > +#define TARGET_NR_msgctl                402
>> > +#define TARGET_NR_clock_gettime64       403
>> > +#define TARGET_NR_clock_settime64       404
>> > +#define TARGET_NR_clock_adjtime64       405
>> > +#define TARGET_NR_clock_getres_time64   406
>> > +#define TARGET_NR_clock_nanosleep_time64 407
>> > +#define TARGET_NR_timer_gettime64       408
>> > +#define TARGET_NR_timer_settime64       409
>> > +#define TARGET_NR_timerfd_gettime64     410
>> > +#define TARGET_NR_timerfd_settime64     411
>> > +#define TARGET_NR_utimensat_time64      412
>> > +#define TARGET_NR_pselect6_time64       413
>> > +#define TARGET_NR_ppoll_time64          414
>> > +#define TARGET_NR_io_pgetevents_time64  416
>> > +#define TARGET_NR_recvmmsg_time64       417
>> > +#define TARGET_NR_mq_timedsend_time64   418
>> > +#define TARGET_NR_mq_timedreceive_time64 419
>> > +#define TARGET_NR_semtimedop_time64     420
>> > +#define TARGET_NR_rt_sigtimedwait_time64 421
>> > +#define TARGET_NR_futex_time64          422
>> > +#define TARGET_NR_sched_rr_get_interval_time64 423
>> > +#define TARGET_NR_pidfd_send_signal     424
>> > +#define TARGET_NR_io_uring_setup        425
>> > +#define TARGET_NR_io_uring_enter        426
>> > +#define TARGET_NR_io_uring_register     427
>> >
>> >  #endif
>> >
>>
>>
>>

[-- Attachment #2: Type: text/html, Size: 12682 bytes --]

  reply	other threads:[~2019-11-12  8:28 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-16 21:01 [PATCH] enable translating statx syscalls on more arches Andrew Kelley
2019-10-23  0:55 ` Andrew Kelley
2019-11-12  4:45 ` Andrew Kelley
2019-11-12  8:24   ` Aleksandar Markovic
2019-11-12  8:27     ` Aleksandar Markovic [this message]
2019-11-12  9:21       ` Laurent Vivier
2019-11-13  9:55         ` Aleksandar Markovic
2019-11-13 10:55           ` Laurent Vivier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAL1e-=hf6Z4cdZ-kfY=vg6fXWLX1Vo9R604AvDwxj7rFoXB2Tg@mail.gmail.com' \
    --to=aleksandar.m.mail@gmail.com \
    --cc=andrew@ziglang.org \
    --cc=laurent@vivier.eu \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).