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 --]
next prev parent 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).