mailing list of musl libc
 help / color / mirror / Atom feed
* [musl] [PATCH 00/11] updates for linux v5.10
@ 2020-12-23 21:13 Szabolcs Nagy
  2021-02-14 19:02 ` Szabolcs Nagy
  0 siblings, 1 reply; 4+ messages in thread
From: Szabolcs Nagy @ 2020-12-23 21:13 UTC (permalink / raw)
  To: musl

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

with some missed aarch64 v5.8 bits.

i noticed that v5.2 had new syscalls with new macros defined
in linux/mount.h, but since those syscalls are undocumented
(open_tree, move_mount, fsopen, fsconfig, fsmount and fspick)
i think it's fine to leave those macros out but the new flag
for mount is added.

Szabolcs Nagy (11):
  bits/syscall.h: add process_madvise from linux v5.10
  sys/membarrier.h: add new constants from linux v5.10
  sys/mount.h: add MS_NOSYMFOLLOW from linux v5.10
  sys/mman.h: add MAP_HUGE_16KB from linux v5.10
  elf.h: add NT_ARM_TAGGED_ADDR_CTRL from linux v5.10
  sys/prctl.h: add MTE related constants from linux v5.10
  signal.h: add MTE specific SIGSEGV codes from linux v5.10
  aarch64/bits/hwcap.h: add HWCAP2_BTI from linux v5.8
  add aarch64/bits/mman.h with PROT_BTI from linux v5.8
  aarch64/bits/hwcap.h: add HWCAP2_MTE from linux v5.10
  aarch64/bits/mman.h: add PROT_MTE from linux v5.10

 arch/aarch64/bits/hwcap.h         | 2 ++
 arch/aarch64/bits/mman.h          | 2 ++
 arch/aarch64/bits/syscall.h.in    | 1 +
 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 +
 include/elf.h                     | 1 +
 include/signal.h                  | 2 ++
 include/sys/membarrier.h          | 4 ++++
 include/sys/mman.h                | 1 +
 include/sys/mount.h               | 1 +
 include/sys/prctl.h               | 7 +++++++
 24 files changed, 36 insertions(+)
 create mode 100644 arch/aarch64/bits/mman.h

-- 
2.28.0


[-- Attachment #2: 0001-bits-syscall.h-add-process_madvise-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 6625 bytes --]

From 3a0bae236df109892a0e8bb0c4d93ed38a8d7e3a Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 20:12:31 +0000
Subject: [PATCH 01/11] bits/syscall.h: add process_madvise from linux v5.10

mainly added to linux to allow a central process management service in
android to give MADV_COLD|PAGEOUT hints for other processes, see

  linux commit ecb8ac8b1f146915aa6b96449b66dd48984caacc
  mm/madvise: introduce process_madvise() syscall: an external memory hinting API
---
 arch/aarch64/bits/syscall.h.in    | 1 +
 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 +
 16 files changed, 16 insertions(+)

diff --git a/arch/aarch64/bits/syscall.h.in b/arch/aarch64/bits/syscall.h.in
index f9457c18..1ad467c0 100644
--- a/arch/aarch64/bits/syscall.h.in
+++ b/arch/aarch64/bits/syscall.h.in
@@ -293,4 +293,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/arm/bits/syscall.h.in b/arch/arm/bits/syscall.h.in
index 7e2fc266..cf9e3411 100644
--- a/arch/arm/bits/syscall.h.in
+++ b/arch/arm/bits/syscall.h.in
@@ -393,6 +393,7 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
 #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 abdb210d..5d1c4d7a 100644
--- a/arch/i386/bits/syscall.h.in
+++ b/arch/i386/bits/syscall.h.in
@@ -430,4 +430,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/m68k/bits/syscall.h.in b/arch/m68k/bits/syscall.h.in
index e10969a2..6794b1a0 100644
--- a/arch/m68k/bits/syscall.h.in
+++ b/arch/m68k/bits/syscall.h.in
@@ -410,3 +410,4 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
diff --git a/arch/microblaze/bits/syscall.h.in b/arch/microblaze/bits/syscall.h.in
index 9d469047..7f71df3b 100644
--- a/arch/microblaze/bits/syscall.h.in
+++ b/arch/microblaze/bits/syscall.h.in
@@ -431,4 +431,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/mips/bits/syscall.h.in b/arch/mips/bits/syscall.h.in
index 2bb03f06..d54845b2 100644
--- a/arch/mips/bits/syscall.h.in
+++ b/arch/mips/bits/syscall.h.in
@@ -412,4 +412,5 @@
 #define __NR_openat2		4437
 #define __NR_pidfd_getfd	4438
 #define __NR_faccessat2		4439
+#define __NR_process_madvise	4440
 
diff --git a/arch/mips64/bits/syscall.h.in b/arch/mips64/bits/syscall.h.in
index 045e8238..920b4358 100644
--- a/arch/mips64/bits/syscall.h.in
+++ b/arch/mips64/bits/syscall.h.in
@@ -342,4 +342,5 @@
 #define __NR_openat2		5437
 #define __NR_pidfd_getfd	5438
 #define __NR_faccessat2		5439
+#define __NR_process_madvise	5440
 
diff --git a/arch/mipsn32/bits/syscall.h.in b/arch/mipsn32/bits/syscall.h.in
index 5b322558..e6dad688 100644
--- a/arch/mipsn32/bits/syscall.h.in
+++ b/arch/mipsn32/bits/syscall.h.in
@@ -366,4 +366,5 @@
 #define __NR_openat2		6437
 #define __NR_pidfd_getfd	6438
 #define __NR_faccessat2		6439
+#define __NR_process_madvise	6440
 
diff --git a/arch/or1k/bits/syscall.h.in b/arch/or1k/bits/syscall.h.in
index b3603891..463ee901 100644
--- a/arch/or1k/bits/syscall.h.in
+++ b/arch/or1k/bits/syscall.h.in
@@ -315,4 +315,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/powerpc/bits/syscall.h.in b/arch/powerpc/bits/syscall.h.in
index 5c6fae3e..db4d0ca4 100644
--- a/arch/powerpc/bits/syscall.h.in
+++ b/arch/powerpc/bits/syscall.h.in
@@ -419,4 +419,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/powerpc64/bits/syscall.h.in b/arch/powerpc64/bits/syscall.h.in
index edf73d3d..a128890b 100644
--- a/arch/powerpc64/bits/syscall.h.in
+++ b/arch/powerpc64/bits/syscall.h.in
@@ -391,4 +391,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/riscv64/bits/syscall.h.in b/arch/riscv64/bits/syscall.h.in
index 5def016b..f9c421d0 100644
--- a/arch/riscv64/bits/syscall.h.in
+++ b/arch/riscv64/bits/syscall.h.in
@@ -293,6 +293,7 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
 #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 fb2e60e3..9c8d984e 100644
--- a/arch/s390x/bits/syscall.h.in
+++ b/arch/s390x/bits/syscall.h.in
@@ -356,4 +356,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/sh/bits/syscall.h.in b/arch/sh/bits/syscall.h.in
index 158afc09..17dd7e07 100644
--- a/arch/sh/bits/syscall.h.in
+++ b/arch/sh/bits/syscall.h.in
@@ -403,4 +403,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
diff --git a/arch/x32/bits/syscall.h.in b/arch/x32/bits/syscall.h.in
index cfd9856f..5361442e 100644
--- a/arch/x32/bits/syscall.h.in
+++ b/arch/x32/bits/syscall.h.in
@@ -302,6 +302,7 @@
 #define __NR_openat2		(0x40000000 + 437)
 #define __NR_pidfd_getfd	(0x40000000 + 438)
 #define __NR_faccessat2		(0x40000000 + 439)
+#define __NR_process_madvise	(0x40000000 + 440)
 
 
 #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 a6117951..e943883d 100644
--- a/arch/x86_64/bits/syscall.h.in
+++ b/arch/x86_64/bits/syscall.h.in
@@ -349,4 +349,5 @@
 #define __NR_openat2		437
 #define __NR_pidfd_getfd	438
 #define __NR_faccessat2		439
+#define __NR_process_madvise	440
 
-- 
2.28.0


[-- Attachment #3: 0002-sys-membarrier.h-add-new-constants-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 1129 bytes --]

From 102a88b1d2f7da18ea861a0cd8673d202b115b2c Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 20:27:22 +0000
Subject: [PATCH 02/11] sys/membarrier.h: add new constants from linux v5.10

can cause rseq restart on another cpu to synchronize with global
memory access from rseq critical sections, see

  linux commit 2a36ab717e8fe678d98f81c14a0b124712719840
  rseq/membarrier: Add MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ
---
 include/sys/membarrier.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/sys/membarrier.h b/include/sys/membarrier.h
index 10cb3108..11193eda 100644
--- a/include/sys/membarrier.h
+++ b/include/sys/membarrier.h
@@ -9,9 +9,13 @@
 #define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED 16
 #define MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE 32
 #define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE 64
+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ 128
+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ 256
 
 #define MEMBARRIER_CMD_SHARED MEMBARRIER_CMD_GLOBAL
 
+#define MEMBARRIER_CMD_FLAG_CPU 1
+
 int membarrier(int, int);
 
 #endif
-- 
2.28.0


[-- Attachment #4: 0003-sys-mount.h-add-MS_NOSYMFOLLOW-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 849 bytes --]

From 1b405342e4968dda2e6c3b811a427a93cc286750 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 20:56:23 +0000
Subject: [PATCH 03/11] sys/mount.h: add MS_NOSYMFOLLOW from linux v5.10

path resolution does not follow symlinks on nosymfollow mounts (but
readlink still does), see

  linux commit dab741e0e02bd3c4f5e2e97be74b39df2523fc6e
  Add a "nosymfollow" mount option.
---
 include/sys/mount.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/sys/mount.h b/include/sys/mount.h
index 57a89c09..09bd6e9d 100644
--- a/include/sys/mount.h
+++ b/include/sys/mount.h
@@ -31,6 +31,7 @@ extern "C" {
 #define MS_REMOUNT     32
 #define MS_MANDLOCK    64
 #define MS_DIRSYNC     128
+#define MS_NOSYMFOLLOW 256
 #define MS_NOATIME     1024
 #define MS_NODIRATIME  2048
 #define MS_BIND        4096
-- 
2.28.0


[-- Attachment #5: 0004-sys-mman.h-add-MAP_HUGE_16KB-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 768 bytes --]

From 73db195ebc203e8b7b793a06e8f3ef9eed45749e Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 21:02:21 +0000
Subject: [PATCH 04/11] sys/mman.h: add MAP_HUGE_16KB from linux v5.10

see

  linux commit e47168f3d1b14af5281cf50c59561d59d28201f9
  powerpc/8xx: Support 16k hugepages with 4k pages
---
 include/sys/mman.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/sys/mman.h b/include/sys/mman.h
index 4d603e91..80a3baae 100644
--- a/include/sys/mman.h
+++ b/include/sys/mman.h
@@ -40,6 +40,7 @@ extern "C" {
 
 #define MAP_HUGE_SHIFT 26
 #define MAP_HUGE_MASK  0x3f
+#define MAP_HUGE_16KB  (14 << 26)
 #define MAP_HUGE_64KB  (16 << 26)
 #define MAP_HUGE_512KB (19 << 26)
 #define MAP_HUGE_1MB   (20 << 26)
-- 
2.28.0


[-- Attachment #6: 0005-elf.h-add-NT_ARM_TAGGED_ADDR_CTRL-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 783 bytes --]

From 2885ff898b339f0146c337ebc6743f994cade0f0 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 21:06:06 +0000
Subject: [PATCH 05/11] elf.h: add NT_ARM_TAGGED_ADDR_CTRL from linux v5.10

see

  linux commit 2200aa7154cb7ef76bac93e98326883ba64bfa2e
  arm64: mte: ptrace: Add NT_ARM_TAGGED_ADDR_CTRL regset
---
 include/elf.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/elf.h b/include/elf.h
index b5e7befb..5170f3e2 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -686,6 +686,7 @@ typedef struct {
 #define NT_ARM_PAC_MASK	0x406
 #define NT_ARM_PACA_KEYS	0x407
 #define NT_ARM_PACG_KEYS	0x408
+#define NT_ARM_TAGGED_ADDR_CTRL	0x409
 #define NT_METAG_CBUF	0x500
 #define NT_METAG_RPIPE	0x501
 #define NT_METAG_TLS	0x502
-- 
2.28.0


[-- Attachment #7: 0006-sys-prctl.h-add-MTE-related-constants-from-linux-v5..patch --]
[-- Type: text/x-diff, Size: 1230 bytes --]

From b8f172dd836741c76078bab3c7ac5a9372eab023 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 21:10:26 +0000
Subject: [PATCH 06/11] sys/prctl.h: add MTE related constants from linux v5.10

these are for the aarch64 MTE (memory tagging extension), see

  linux commit 1c101da8b971a36695319dce7a24711dc567a0dd
  arm64: mte: Allow user control of the tag check mode via prctl()

  linux commit af5ce95282dc99d08a27a407a02c763dde1c5558
  arm64: mte: Allow user control of the generated random tags via prctl()
---
 include/sys/prctl.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/include/sys/prctl.h b/include/sys/prctl.h
index 4b9fcc05..4ba73f42 100644
--- a/include/sys/prctl.h
+++ b/include/sys/prctl.h
@@ -157,6 +157,13 @@ struct prctl_mm_map {
 #define PR_SET_TAGGED_ADDR_CTRL 55
 #define PR_GET_TAGGED_ADDR_CTRL 56
 #define PR_TAGGED_ADDR_ENABLE (1UL << 0)
+#define PR_MTE_TCF_SHIFT 1
+#define PR_MTE_TCF_NONE  (0UL << 1)
+#define PR_MTE_TCF_SYNC  (1UL << 1)
+#define PR_MTE_TCF_ASYNC (2UL << 1)
+#define PR_MTE_TCF_MASK  (3UL << 1)
+#define PR_MTE_TAG_SHIFT 3
+#define PR_MTE_TAG_MASK  (0xffffUL << 3)
 
 #define PR_SET_IO_FLUSHER 57
 #define PR_GET_IO_FLUSHER 58
-- 
2.28.0


[-- Attachment #8: 0007-signal.h-add-MTE-specific-SIGSEGV-codes-from-linux-v.patch --]
[-- Type: text/x-diff, Size: 809 bytes --]

From cabadd8ccd87d5187ea0f1bd1dbd6cc11dafdfba Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 22:12:50 +0000
Subject: [PATCH 07/11] signal.h: add MTE specific SIGSEGV codes from linux
 v5.10

add synchronouse and asynchronous tag check failure codes, see

  linux commit 74f1082487feb90bbf880af14beb8e29c3030c9f
  arm64: mte: Add specific SIGSEGV codes
---
 include/signal.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/signal.h b/include/signal.h
index 9ed929e4..f270a594 100644
--- a/include/signal.h
+++ b/include/signal.h
@@ -75,6 +75,8 @@ typedef struct sigaltstack stack_t;
 #define SEGV_ACCERR 2
 #define SEGV_BNDERR 3
 #define SEGV_PKUERR 4
+#define SEGV_MTEAERR 8
+#define SEGV_MTESERR 9
 
 #define BUS_ADRALN 1
 #define BUS_ADRERR 2
-- 
2.28.0


[-- Attachment #9: 0008-aarch64-bits-hwcap.h-add-HWCAP2_BTI-from-linux-v5.8.patch --]
[-- Type: text/x-diff, Size: 751 bytes --]

From 76cf9d17afc563d0d6b2208d713dd66a5cee9042 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 22:22:58 +0000
Subject: [PATCH 08/11] aarch64/bits/hwcap.h: add HWCAP2_BTI from linux v5.8

hwcap for BTI was missing, see

  linux commit 8ef8f360cf30be12382f89ff48a57fbbd9b31c14
  arm64: Basic Branch Target Identification support
---
 arch/aarch64/bits/hwcap.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/aarch64/bits/hwcap.h b/arch/aarch64/bits/hwcap.h
index 7ab73f99..725afeb2 100644
--- a/arch/aarch64/bits/hwcap.h
+++ b/arch/aarch64/bits/hwcap.h
@@ -48,3 +48,4 @@
 #define HWCAP2_BF16		(1 << 14)
 #define HWCAP2_DGH		(1 << 15)
 #define HWCAP2_RNG		(1 << 16)
+#define HWCAP2_BTI		(1 << 17)
-- 
2.28.0


[-- Attachment #10: 0009-add-aarch64-bits-mman.h-with-PROT_BTI-from-linux-v5..patch --]
[-- Type: text/x-diff, Size: 674 bytes --]

From 6df1921eef0ea11500ad10a451b6ce2a2f905a6d Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 22:25:03 +0000
Subject: [PATCH 09/11] add aarch64/bits/mman.h with PROT_BTI from linux v5.8

this was missing, see

  linux commit 8ef8f360cf30be12382f89ff48a57fbbd9b31c14
  arm64: Basic Branch Target Identification support
---
 arch/aarch64/bits/mman.h | 1 +
 1 file changed, 1 insertion(+)
 create mode 100644 arch/aarch64/bits/mman.h

diff --git a/arch/aarch64/bits/mman.h b/arch/aarch64/bits/mman.h
new file mode 100644
index 00000000..6d9d8850
--- /dev/null
+++ b/arch/aarch64/bits/mman.h
@@ -0,0 +1 @@
+#define PROT_BTI 0x10
-- 
2.28.0


[-- Attachment #11: 0010-aarch64-bits-hwcap.h-add-HWCAP2_MTE-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 741 bytes --]

From 328e9ba3971b246d093d7cc3525e3dde9dbe6d7c Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 22:26:51 +0000
Subject: [PATCH 10/11] aarch64/bits/hwcap.h: add HWCAP2_MTE from linux v5.10

see

  linux commit 3b714d24ef173f81c78af16f73dcc9b40428c803
  arm64: mte: CPU feature detection and initial sysreg configuration
---
 arch/aarch64/bits/hwcap.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/aarch64/bits/hwcap.h b/arch/aarch64/bits/hwcap.h
index 725afeb2..424cc4d4 100644
--- a/arch/aarch64/bits/hwcap.h
+++ b/arch/aarch64/bits/hwcap.h
@@ -49,3 +49,4 @@
 #define HWCAP2_DGH		(1 << 15)
 #define HWCAP2_RNG		(1 << 16)
 #define HWCAP2_BTI		(1 << 17)
+#define HWCAP2_MTE		(1 << 18)
-- 
2.28.0


[-- Attachment #12: 0011-aarch64-bits-mman.h-add-PROT_MTE-from-linux-v5.10.patch --]
[-- Type: text/x-diff, Size: 642 bytes --]

From a59b294c583a899a4c16c7dc951e451e22b7dba3 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 19 Dec 2020 22:29:19 +0000
Subject: [PATCH 11/11] aarch64/bits/mman.h: add PROT_MTE from linux v5.10

see

  linux commit 9f3419315f3cdc41a7318e4d50ba18a592b30c8c
  arm64: mte: Add PROT_MTE support to mmap() and mprotect()
---
 arch/aarch64/bits/mman.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/aarch64/bits/mman.h b/arch/aarch64/bits/mman.h
index 6d9d8850..8fad5ceb 100644
--- a/arch/aarch64/bits/mman.h
+++ b/arch/aarch64/bits/mman.h
@@ -1 +1,2 @@
 #define PROT_BTI 0x10
+#define PROT_MTE 0x20
-- 
2.28.0


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [musl] [PATCH 00/11] updates for linux v5.10
  2020-12-23 21:13 [musl] [PATCH 00/11] updates for linux v5.10 Szabolcs Nagy
@ 2021-02-14 19:02 ` Szabolcs Nagy
  2021-02-15 14:18   ` Rich Felker
  0 siblings, 1 reply; 4+ messages in thread
From: Szabolcs Nagy @ 2021-02-14 19:02 UTC (permalink / raw)
  To: musl

* Szabolcs Nagy <nsz@port70.net> [2020-12-23 22:13:23 +0100]:
> with some missed aarch64 v5.8 bits.
> 
> i noticed that v5.2 had new syscalls with new macros defined
> in linux/mount.h, but since those syscalls are undocumented
> (open_tree, move_mount, fsopen, fsconfig, fsmount and fspick)
> i think it's fine to leave those macros out but the new flag
> for mount is added.
> 
> Szabolcs Nagy (11):
>   bits/syscall.h: add process_madvise from linux v5.10
>   sys/membarrier.h: add new constants from linux v5.10
>   sys/mount.h: add MS_NOSYMFOLLOW from linux v5.10
>   sys/mman.h: add MAP_HUGE_16KB from linux v5.10
>   elf.h: add NT_ARM_TAGGED_ADDR_CTRL from linux v5.10
>   sys/prctl.h: add MTE related constants from linux v5.10
>   signal.h: add MTE specific SIGSEGV codes from linux v5.10
>   aarch64/bits/hwcap.h: add HWCAP2_BTI from linux v5.8
>   add aarch64/bits/mman.h with PROT_BTI from linux v5.8
>   aarch64/bits/hwcap.h: add HWCAP2_MTE from linux v5.10
>   aarch64/bits/mman.h: add PROT_MTE from linux v5.10

ping.

> 
>  arch/aarch64/bits/hwcap.h         | 2 ++
>  arch/aarch64/bits/mman.h          | 2 ++
>  arch/aarch64/bits/syscall.h.in    | 1 +
>  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 +
>  include/elf.h                     | 1 +
>  include/signal.h                  | 2 ++
>  include/sys/membarrier.h          | 4 ++++
>  include/sys/mman.h                | 1 +
>  include/sys/mount.h               | 1 +
>  include/sys/prctl.h               | 7 +++++++
>  24 files changed, 36 insertions(+)
>  create mode 100644 arch/aarch64/bits/mman.h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [musl] [PATCH 00/11] updates for linux v5.10
  2021-02-14 19:02 ` Szabolcs Nagy
@ 2021-02-15 14:18   ` Rich Felker
  2021-02-15 18:36     ` Szabolcs Nagy
  0 siblings, 1 reply; 4+ messages in thread
From: Rich Felker @ 2021-02-15 14:18 UTC (permalink / raw)
  To: musl

On Sun, Feb 14, 2021 at 08:02:24PM +0100, Szabolcs Nagy wrote:
> * Szabolcs Nagy <nsz@port70.net> [2020-12-23 22:13:23 +0100]:
> > with some missed aarch64 v5.8 bits.
> > 
> > i noticed that v5.2 had new syscalls with new macros defined
> > in linux/mount.h, but since those syscalls are undocumented
> > (open_tree, move_mount, fsopen, fsconfig, fsmount and fspick)
> > i think it's fine to leave those macros out but the new flag
> > for mount is added.
> > 
> > Szabolcs Nagy (11):
> >   bits/syscall.h: add process_madvise from linux v5.10
> >   sys/membarrier.h: add new constants from linux v5.10
> >   sys/mount.h: add MS_NOSYMFOLLOW from linux v5.10
> >   sys/mman.h: add MAP_HUGE_16KB from linux v5.10
> >   elf.h: add NT_ARM_TAGGED_ADDR_CTRL from linux v5.10
> >   sys/prctl.h: add MTE related constants from linux v5.10
> >   signal.h: add MTE specific SIGSEGV codes from linux v5.10
> >   aarch64/bits/hwcap.h: add HWCAP2_BTI from linux v5.8
> >   add aarch64/bits/mman.h with PROT_BTI from linux v5.8
> >   aarch64/bits/hwcap.h: add HWCAP2_MTE from linux v5.10
> >   aarch64/bits/mman.h: add PROT_MTE from linux v5.10
> 
> ping.

Thanks, applying. BTW could you check that your editor settings for
musl commits wrap at 75 columns or fewer (making 79 with default git
log indent)? I reflowed one of these and another patch a few days ago.

Rich

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [musl] [PATCH 00/11] updates for linux v5.10
  2021-02-15 14:18   ` Rich Felker
@ 2021-02-15 18:36     ` Szabolcs Nagy
  0 siblings, 0 replies; 4+ messages in thread
From: Szabolcs Nagy @ 2021-02-15 18:36 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl

* Rich Felker <dalias@libc.org> [2021-02-15 09:18:20 -0500]:
> Thanks, applying. BTW could you check that your editor settings for
> musl commits wrap at 75 columns or fewer (making 79 with default git
> log indent)? I reflowed one of these and another patch a few days ago.

ok.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-02-15 18:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-23 21:13 [musl] [PATCH 00/11] updates for linux v5.10 Szabolcs Nagy
2021-02-14 19:02 ` Szabolcs Nagy
2021-02-15 14:18   ` Rich Felker
2021-02-15 18:36     ` Szabolcs Nagy

mailing list of musl libc

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.vuxu.org/musl

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V1 musl musl/ http://inbox.vuxu.org/musl \
		musl@inbox.vuxu.org
	public-inbox-index musl

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.vuxu.org/vuxu.archive.musl


code repositories for the project(s) associated with this inbox:

	https://git.vuxu.org/mirror/musl/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git