Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 7 Feb 2024 21:10:33 -0500
From: Rich Felker <dalias@...c.org>
To: Gaël PORTAY <gael.portay@...ne.fr>
Cc: musl@...ts.openwall.com
Subject: Re: [PATCH 2/3] bits/syscall.h: add __NR_fchmodat2 from linux
 v6.6

On Thu, Jan 18, 2024 at 01:05:39AM +0100, Gaël PORTAY wrote:
> the linux fchmodat syscall lacks a flag argument that is necessary to
> implement the posix api, see
> 
>   linux commit 09da082b07bbae1c11d9560c8502800039aebcea
>   fs: Add fchmodat2()
> 
>   linux commit 78252deb023cf0879256fcfbafe37022c390762b
>   arch: Register fchmodat2, usually as syscall 452
> ---
>  arch/arm/bits/syscall.h.in        | 1 +
>  arch/i386/bits/syscall.h.in       | 1 +
>  arch/m68k/bits/syscall.h.in       | 1 +
>  arch/microblaze/bits/syscall.h.in | 1 +
>  arch/mips/bits/syscall.h.in       | 1 +
>  arch/mips64/bits/syscall.h.in     | 1 +
>  arch/mipsn32/bits/syscall.h.in    | 1 +
>  arch/or1k/bits/syscall.h.in       | 1 +
>  arch/powerpc/bits/syscall.h.in    | 1 +
>  arch/powerpc64/bits/syscall.h.in  | 1 +
>  arch/riscv64/bits/syscall.h.in    | 1 +
>  arch/s390x/bits/syscall.h.in      | 1 +
>  arch/sh/bits/syscall.h.in         | 1 +
>  arch/x32/bits/syscall.h.in        | 1 +
>  arch/x86_64/bits/syscall.h.in     | 1 +
>  15 files changed, 15 insertions(+)
> 
> diff --git a/arch/arm/bits/syscall.h.in b/arch/arm/bits/syscall.h.in
> index 048fdea7..e5b9ca9d 100644
> --- a/arch/arm/bits/syscall.h.in
> +++ b/arch/arm/bits/syscall.h.in
> @@ -399,6 +399,7 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
>  #define __ARM_NR_breakpoint	0x0f0001
>  #define __ARM_NR_cacheflush	0x0f0002
> diff --git a/arch/i386/bits/syscall.h.in b/arch/i386/bits/syscall.h.in
> index 46ffe1d9..e746d58c 100644
> --- a/arch/i386/bits/syscall.h.in
> +++ b/arch/i386/bits/syscall.h.in
> @@ -436,4 +436,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/m68k/bits/syscall.h.in b/arch/m68k/bits/syscall.h.in
> index a0c63323..43030eea 100644
> --- a/arch/m68k/bits/syscall.h.in
> +++ b/arch/m68k/bits/syscall.h.in
> @@ -416,3 +416,4 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
> diff --git a/arch/microblaze/bits/syscall.h.in b/arch/microblaze/bits/syscall.h.in
> index 931d7919..48669e4f 100644
> --- a/arch/microblaze/bits/syscall.h.in
> +++ b/arch/microblaze/bits/syscall.h.in
> @@ -437,4 +437,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/mips/bits/syscall.h.in b/arch/mips/bits/syscall.h.in
> index 63e3503a..eaba97c6 100644
> --- a/arch/mips/bits/syscall.h.in
> +++ b/arch/mips/bits/syscall.h.in
> @@ -418,4 +418,5 @@
>  #define __NR_landlock_create_ruleset	4444
>  #define __NR_landlock_add_rule	4445
>  #define __NR_landlock_restrict_self	4446
> +#define __NR_fchmodat2		4452
>  
> diff --git a/arch/mips64/bits/syscall.h.in b/arch/mips64/bits/syscall.h.in
> index b89965d1..c1f8f399 100644
> --- a/arch/mips64/bits/syscall.h.in
> +++ b/arch/mips64/bits/syscall.h.in
> @@ -348,4 +348,5 @@
>  #define __NR_landlock_create_ruleset	5444
>  #define __NR_landlock_add_rule	5445
>  #define __NR_landlock_restrict_self	5446
> +#define __NR_fchmodat2		5452
>  
> diff --git a/arch/mipsn32/bits/syscall.h.in b/arch/mipsn32/bits/syscall.h.in
> index bb2d04a8..9d952459 100644
> --- a/arch/mipsn32/bits/syscall.h.in
> +++ b/arch/mipsn32/bits/syscall.h.in
> @@ -372,4 +372,5 @@
>  #define __NR_landlock_create_ruleset	6444
>  #define __NR_landlock_add_rule	6445
>  #define __NR_landlock_restrict_self	6446
> +#define __NR_fchmodat2		6452
>  
> diff --git a/arch/or1k/bits/syscall.h.in b/arch/or1k/bits/syscall.h.in
> index 2b5f2052..b24fd784 100644
> --- a/arch/or1k/bits/syscall.h.in
> +++ b/arch/or1k/bits/syscall.h.in
> @@ -321,4 +321,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/powerpc/bits/syscall.h.in b/arch/powerpc/bits/syscall.h.in
> index b1605a58..5dcab5a1 100644
> --- a/arch/powerpc/bits/syscall.h.in
> +++ b/arch/powerpc/bits/syscall.h.in
> @@ -425,4 +425,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/powerpc64/bits/syscall.h.in b/arch/powerpc64/bits/syscall.h.in
> index b3a8fba0..4a6d7e3c 100644
> --- a/arch/powerpc64/bits/syscall.h.in
> +++ b/arch/powerpc64/bits/syscall.h.in
> @@ -397,4 +397,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/riscv64/bits/syscall.h.in b/arch/riscv64/bits/syscall.h.in
> index b534afe8..1e610e53 100644
> --- a/arch/riscv64/bits/syscall.h.in
> +++ b/arch/riscv64/bits/syscall.h.in
> @@ -299,6 +299,7 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
>  #define __NR_sysriscv __NR_arch_specific_syscall
>  #define __NR_riscv_flush_icache (__NR_sysriscv + 15)
> diff --git a/arch/s390x/bits/syscall.h.in b/arch/s390x/bits/syscall.h.in
> index dfc38479..6c0cdf93 100644
> --- a/arch/s390x/bits/syscall.h.in
> +++ b/arch/s390x/bits/syscall.h.in
> @@ -362,4 +362,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/sh/bits/syscall.h.in b/arch/sh/bits/syscall.h.in
> index ff14f54d..5e5d5ff0 100644
> --- a/arch/sh/bits/syscall.h.in
> +++ b/arch/sh/bits/syscall.h.in
> @@ -409,4 +409,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2		452
>  
> diff --git a/arch/x32/bits/syscall.h.in b/arch/x32/bits/syscall.h.in
> index 5d22fa17..69bd42d5 100644
> --- a/arch/x32/bits/syscall.h.in
> +++ b/arch/x32/bits/syscall.h.in
> @@ -308,6 +308,7 @@
>  #define __NR_landlock_create_ruleset	(0x40000000 + 444)
>  #define __NR_landlock_add_rule	(0x40000000 + 445)
>  #define __NR_landlock_restrict_self	(0x40000000 + 446)
> +#define __NR_fchmodat2		(0x40000000 + 452)
>  
>  
>  #define __NR_rt_sigaction (0x40000000 + 512)
> diff --git a/arch/x86_64/bits/syscall.h.in b/arch/x86_64/bits/syscall.h.in
> index c3882de7..f83a0987 100644
> --- a/arch/x86_64/bits/syscall.h.in
> +++ b/arch/x86_64/bits/syscall.h.in
> @@ -355,4 +355,5 @@
>  #define __NR_landlock_create_ruleset	444
>  #define __NR_landlock_add_rule	445
>  #define __NR_landlock_restrict_self	446
> +#define __NR_fchmodat2			452
>  
> -- 
> 2.43.0

I want to apply this series, but noticed there's a big gap of syscall
numbers we haven't added yet. Would you be willing to prepare a patch
bringing all the syscall.h.in files up to date with current
assignments?

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.