mailing list of musl libc
 help / color / mirror / code / Atom feed
* [PATCH 0/7] linux v4.6 update
@ 2016-05-26 20:04 Szabolcs Nagy
  2016-05-26 20:04 ` [PATCH 1/7] add preadv2 and pwritev2 syscall numbers for linux v4.6 Szabolcs Nagy
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:04 UTC (permalink / raw)
  To: musl

i didnt deal with the x86_64 sigcontext change
(__pad0 is now ss) but i'm not sure if need to
do anything about that.

there are new libc-compat header hacks, i will
try to look for a solution that works for musl.

Szabolcs Nagy (7):
  add preadv2 and pwritev2 syscall numbers for linux v4.6
  add SO_CNX_ADVICE to sys/socket.h, new in linux v4.6
  add ETH_P_MACSEC netinet/if_ether.h, new in linux v4.6
  update siginfo struct for linux v4.6
  add CLONE_NEWCGROUP clone flag, new in linux v4.6
  add new tcp_info fields from linux v4.6
  update sys/socket.h to linux v4.6

 arch/aarch64/bits/syscall.h.in   |  2 ++
 arch/arm/bits/syscall.h.in       |  2 ++
 arch/i386/bits/syscall.h.in      |  2 ++
 arch/mips/bits/syscall.h.in      |  2 ++
 arch/mips64/bits/syscall.h.in    |  2 ++
 arch/mipsn32/bits/syscall.h.in   |  2 ++
 arch/or1k/bits/syscall.h.in      |  2 ++
 arch/powerpc/bits/syscall.h.in   |  2 ++
 arch/powerpc64/bits/syscall.h.in |  2 ++
 arch/x32/bits/syscall.h.in       |  2 ++
 arch/x86_64/bits/syscall.h.in    |  2 ++
 include/netinet/if_ether.h       |  1 +
 include/netinet/tcp.h            |  4 ++++
 include/sched.h                  |  1 +
 include/signal.h                 | 17 +++++++++++------
 include/sys/socket.h             | 21 ++++++++++++++++++++-
 16 files changed, 59 insertions(+), 7 deletions(-)

-- 
2.8.1



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

* [PATCH 1/7] add preadv2 and pwritev2 syscall numbers for linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
@ 2016-05-26 20:04 ` Szabolcs Nagy
  2016-05-26 20:05 ` [PATCH 2/7] add SO_CNX_ADVICE to sys/socket.h, new in " Szabolcs Nagy
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:04 UTC (permalink / raw)
  To: musl

the syscalls take an additional flag argument, they were added in commit
f17d8b35452cab31a70d224964cd583fb2845449 and a RWF_HIPRI priority hint
flag was added to linux/fs.h in 97be7ebe53915af504fb491fb99f064c7cf3cb09.

the syscall is not allocated for microblaze and sh yet.
---
 arch/aarch64/bits/syscall.h.in   | 2 ++
 arch/arm/bits/syscall.h.in       | 2 ++
 arch/i386/bits/syscall.h.in      | 2 ++
 arch/mips/bits/syscall.h.in      | 2 ++
 arch/mips64/bits/syscall.h.in    | 2 ++
 arch/mipsn32/bits/syscall.h.in   | 2 ++
 arch/or1k/bits/syscall.h.in      | 2 ++
 arch/powerpc/bits/syscall.h.in   | 2 ++
 arch/powerpc64/bits/syscall.h.in | 2 ++
 arch/x32/bits/syscall.h.in       | 2 ++
 arch/x86_64/bits/syscall.h.in    | 2 ++
 11 files changed, 22 insertions(+)

diff --git a/arch/aarch64/bits/syscall.h.in b/arch/aarch64/bits/syscall.h.in
index bcf69d2..332f437 100644
--- a/arch/aarch64/bits/syscall.h.in
+++ b/arch/aarch64/bits/syscall.h.in
@@ -269,4 +269,6 @@
 #define __NR_membarrier 283
 #define __NR_mlock2 284
 #define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
 
diff --git a/arch/arm/bits/syscall.h.in b/arch/arm/bits/syscall.h.in
index 143b0a8..04c8b1c 100644
--- a/arch/arm/bits/syscall.h.in
+++ b/arch/arm/bits/syscall.h.in
@@ -345,6 +345,8 @@
 #define __NR_membarrier		389
 #define __NR_mlock2		390
 #define __NR_copy_file_range	391
+#define __NR_preadv2	392
+#define __NR_pwritev2	393
 
 #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 108fbbc..5fe9c5c 100644
--- a/arch/i386/bits/syscall.h.in
+++ b/arch/i386/bits/syscall.h.in
@@ -376,4 +376,6 @@
 #define __NR_membarrier		375
 #define __NR_mlock2		376
 #define __NR_copy_file_range	377
+#define __NR_preadv2		378
+#define __NR_pwritev2		379
 
diff --git a/arch/mips/bits/syscall.h.in b/arch/mips/bits/syscall.h.in
index 61ff7a5..bcceaa2 100644
--- a/arch/mips/bits/syscall.h.in
+++ b/arch/mips/bits/syscall.h.in
@@ -358,4 +358,6 @@
 #define __NR_membarrier              4358
 #define __NR_mlock2                  4359
 #define __NR_copy_file_range         4360
+#define __NR_preadv2                 4361
+#define __NR_pwritev2                4362
 
diff --git a/arch/mips64/bits/syscall.h.in b/arch/mips64/bits/syscall.h.in
index 0e20683..eef8543 100644
--- a/arch/mips64/bits/syscall.h.in
+++ b/arch/mips64/bits/syscall.h.in
@@ -318,4 +318,6 @@
 #define __NR_membarrier			5318
 #define __NR_mlock2			5319
 #define __NR_copy_file_range		5320
+#define __NR_preadv2			5321
+#define __NR_pwritev2			5322
 
diff --git a/arch/mipsn32/bits/syscall.h.in b/arch/mipsn32/bits/syscall.h.in
index 6c38f68..5fda0b5 100644
--- a/arch/mipsn32/bits/syscall.h.in
+++ b/arch/mipsn32/bits/syscall.h.in
@@ -322,4 +322,6 @@
 #define __NR_membarrier			6322
 #define __NR_mlock2			6323
 #define __NR_copy_file_range		6324
+#define __NR_preadv2			6325
+#define __NR_pwritev2			6326
 
diff --git a/arch/or1k/bits/syscall.h.in b/arch/or1k/bits/syscall.h.in
index c6e55c6..c6b6cf2 100644
--- a/arch/or1k/bits/syscall.h.in
+++ b/arch/or1k/bits/syscall.h.in
@@ -269,4 +269,6 @@
 #define __NR_membarrier 283
 #define __NR_mlock2 284
 #define __NR_copy_file_range 285
+#define __NR_preadv2 286
+#define __NR_pwritev2 287
 
diff --git a/arch/powerpc/bits/syscall.h.in b/arch/powerpc/bits/syscall.h.in
index f55e69c..9d02232 100644
--- a/arch/powerpc/bits/syscall.h.in
+++ b/arch/powerpc/bits/syscall.h.in
@@ -369,4 +369,6 @@
 #define __NR_membarrier            365
 #define __NR_mlock2                378
 #define __NR_copy_file_range       379
+#define __NR_preadv2               380
+#define __NR_pwritev2              381
 
diff --git a/arch/powerpc64/bits/syscall.h.in b/arch/powerpc64/bits/syscall.h.in
index ff37536..c9880fa 100644
--- a/arch/powerpc64/bits/syscall.h.in
+++ b/arch/powerpc64/bits/syscall.h.in
@@ -355,4 +355,6 @@
 #define __NR_membarrier             365
 #define __NR_mlock2                 378
 #define __NR_copy_file_range        379
+#define __NR_preadv2                380
+#define __NR_pwritev2               381
 
diff --git a/arch/x32/bits/syscall.h.in b/arch/x32/bits/syscall.h.in
index 0b9362a..cf2b4f1 100644
--- a/arch/x32/bits/syscall.h.in
+++ b/arch/x32/bits/syscall.h.in
@@ -280,6 +280,8 @@
 #define __NR_membarrier (0x40000000 + 324)
 #define __NR_mlock2 (0x40000000 + 325)
 #define __NR_copy_file_range (0x40000000 + 326)
+#define __NR_preadv2 (0x40000000 + 327)
+#define __NR_pwritev2 (0x40000000 + 328)
 
 #define __NR_rt_sigaction (0x40000000 + 512)
 #define __NR_rt_sigreturn (0x40000000 + 513)
diff --git a/arch/x86_64/bits/syscall.h.in b/arch/x86_64/bits/syscall.h.in
index 7e638a0..d0c5518 100644
--- a/arch/x86_64/bits/syscall.h.in
+++ b/arch/x86_64/bits/syscall.h.in
@@ -325,4 +325,6 @@
 #define __NR_membarrier				324
 #define __NR_mlock2				325
 #define __NR_copy_file_range			326
+#define __NR_preadv2				327
+#define __NR_pwritev2				328
 
-- 
2.8.1



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

* [PATCH 2/7] add SO_CNX_ADVICE to sys/socket.h, new in linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
  2016-05-26 20:04 ` [PATCH 1/7] add preadv2 and pwritev2 syscall numbers for linux v4.6 Szabolcs Nagy
@ 2016-05-26 20:05 ` Szabolcs Nagy
  2016-05-26 20:05 ` [PATCH 3/7] add ETH_P_MACSEC netinet/if_ether.h, " Szabolcs Nagy
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:05 UTC (permalink / raw)
  To: musl

new socket option so application can give advice about routing
path quality of connected udp sockets, added in linux commit
a87cb3e48ee86d29868d3f59cfb9ce1a8fa63314
---
 include/sys/socket.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/sys/socket.h b/include/sys/socket.h
index fd65349..1904b74 100644
--- a/include/sys/socket.h
+++ b/include/sys/socket.h
@@ -222,6 +222,7 @@ struct linger
 #define SO_DETACH_BPF           SO_DETACH_FILTER
 #define SO_ATTACH_REUSEPORT_CBPF 51
 #define SO_ATTACH_REUSEPORT_EBPF 52
+#define SO_CNX_ADVICE           53
 
 #ifndef SOL_SOCKET
 #define SOL_SOCKET      1
-- 
2.8.1



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

* [PATCH 3/7] add ETH_P_MACSEC netinet/if_ether.h, new in linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
  2016-05-26 20:04 ` [PATCH 1/7] add preadv2 and pwritev2 syscall numbers for linux v4.6 Szabolcs Nagy
  2016-05-26 20:05 ` [PATCH 2/7] add SO_CNX_ADVICE to sys/socket.h, new in " Szabolcs Nagy
@ 2016-05-26 20:05 ` Szabolcs Nagy
  2016-05-26 20:06 ` [PATCH 4/7] update siginfo struct for " Szabolcs Nagy
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:05 UTC (permalink / raw)
  To: musl

ethertype for macsec added in linux commit
dece8d2b78d19df7fe5e4e965f1f0d1a3e188d1b
---
 include/netinet/if_ether.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/netinet/if_ether.h b/include/netinet/if_ether.h
index 4802f09..4c2322b 100644
--- a/include/netinet/if_ether.h
+++ b/include/netinet/if_ether.h
@@ -51,6 +51,7 @@
 #define ETH_P_8021AD	0x88A8
 #define ETH_P_802_EX1	0x88B5
 #define ETH_P_TIPC	0x88CA
+#define ETH_P_MACSEC	0x88E5
 #define ETH_P_8021AH	0x88E7
 #define ETH_P_MVRP	0x88F5
 #define ETH_P_1588	0x88F7
-- 
2.8.1



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

* [PATCH 4/7] update siginfo struct for linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
                   ` (2 preceding siblings ...)
  2016-05-26 20:05 ` [PATCH 3/7] add ETH_P_MACSEC netinet/if_ether.h, " Szabolcs Nagy
@ 2016-05-26 20:06 ` Szabolcs Nagy
  2016-05-26 20:06 ` [PATCH 5/7] add CLONE_NEWCGROUP clone flag, new in " Szabolcs Nagy
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:06 UTC (permalink / raw)
  To: musl

x86 protection key faults are reported in the si_pkey field,
added in linux commit cd0ea35ff5511cde299a61c21a95889b4a71464e
---
 include/signal.h | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/include/signal.h b/include/signal.h
index c6323c6..a16094c 100644
--- a/include/signal.h
+++ b/include/signal.h
@@ -74,6 +74,7 @@ typedef struct sigaltstack stack_t;
 #define SEGV_MAPERR 1
 #define SEGV_ACCERR 2
 #define SEGV_BNDERR 3
+#define SEGV_PKUERR 4
 
 #define BUS_ADRALN 1
 #define BUS_ADRERR 2
@@ -123,10 +124,13 @@ typedef struct {
 		struct {
 			void *si_addr;
 			short si_addr_lsb;
-			struct {
-				void *si_lower;
-				void *si_upper;
-			} __addr_bnd;
+			union {
+				struct {
+					void *si_lower;
+					void *si_upper;
+				} __addr_bnd;
+				unsigned si_pkey;
+			} __first;
 		} __sigfault;
 		struct {
 			long si_band;
@@ -147,8 +151,9 @@ typedef struct {
 #define si_value   __si_fields.__si_common.__second.si_value
 #define si_addr    __si_fields.__sigfault.si_addr
 #define si_addr_lsb __si_fields.__sigfault.si_addr_lsb
-#define si_lower   __si_fields.__sigfault.__addr_bnd.si_lower
-#define si_upper   __si_fields.__sigfault.__addr_bnd.si_upper
+#define si_lower   __si_fields.__sigfault.__first.__addr_bnd.si_lower
+#define si_upper   __si_fields.__sigfault.__first.__addr_bnd.si_upper
+#define si_pkey    __si_fields.__sigfault.__first.si_pkey
 #define si_band    __si_fields.__sigpoll.si_band
 #define si_fd      __si_fields.__sigpoll.si_fd
 #define si_timerid __si_fields.__si_common.__first.__timer.si_timerid
-- 
2.8.1



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

* [PATCH 5/7] add CLONE_NEWCGROUP clone flag, new in linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
                   ` (3 preceding siblings ...)
  2016-05-26 20:06 ` [PATCH 4/7] update siginfo struct for " Szabolcs Nagy
@ 2016-05-26 20:06 ` Szabolcs Nagy
  2016-05-26 20:07 ` [PATCH 6/7] add new tcp_info fields from " Szabolcs Nagy
  2016-05-26 20:07 ` [PATCH 7/7] update sys/socket.h to " Szabolcs Nagy
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:06 UTC (permalink / raw)
  To: musl

flag for new cgroup namespace, added in linux commit
5e2bec7c2248ae27c5b16cd97215ae05c1d39179
---
 include/sched.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/sched.h b/include/sched.h
index 7e88f09..af82d6c 100644
--- a/include/sched.h
+++ b/include/sched.h
@@ -59,6 +59,7 @@ int     sched_yield(void);
 #define CLONE_DETACHED	0x00400000
 #define CLONE_UNTRACED	0x00800000
 #define CLONE_CHILD_SETTID	0x01000000
+#define CLONE_NEWCGROUP	0x02000000
 #define CLONE_NEWUTS	0x04000000
 #define CLONE_NEWIPC	0x08000000
 #define CLONE_NEWUSER	0x10000000
-- 
2.8.1



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

* [PATCH 6/7] add new tcp_info fields from linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
                   ` (4 preceding siblings ...)
  2016-05-26 20:06 ` [PATCH 5/7] add CLONE_NEWCGROUP clone flag, new in " Szabolcs Nagy
@ 2016-05-26 20:07 ` Szabolcs Nagy
  2016-05-26 20:07 ` [PATCH 7/7] update sys/socket.h to " Szabolcs Nagy
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:07 UTC (permalink / raw)
  To: musl

new fields and associated linux commit:
tcpi_notsent_bytes, tcpi_min_rtt cd9b266095f422267bddbec88f9098b48ea548fc
tcpi_data_segs_in, tcpi_data_segs_out a44d6eacdaf56f74fad699af7f4925a5f5ac0e7f
---
 include/netinet/tcp.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/netinet/tcp.h b/include/netinet/tcp.h
index 244a21e..d6f41ca 100644
--- a/include/netinet/tcp.h
+++ b/include/netinet/tcp.h
@@ -184,6 +184,10 @@ struct tcp_info
 	uint64_t tcpi_bytes_received;
 	uint32_t tcpi_segs_out;
 	uint32_t tcpi_segs_in;
+	uint32_t tcpi_notsent_bytes;
+	uint32_t tcpi_min_rtt;
+	uint32_t tcpi_data_segs_in;
+	uint32_t tcpi_data_segs_out;
 };
 
 #define TCP_MD5SIG_MAXKEYLEN    80
-- 
2.8.1



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

* [PATCH 7/7] update sys/socket.h to linux v4.6
  2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
                   ` (5 preceding siblings ...)
  2016-05-26 20:07 ` [PATCH 6/7] add new tcp_info fields from " Szabolcs Nagy
@ 2016-05-26 20:07 ` Szabolcs Nagy
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-05-26 20:07 UTC (permalink / raw)
  To: musl

kernel connection multiplexor macros AF_KCM, PF_KCM, SOL_KCM were
added in linux commit ab7ac4eb9832e32a09f4e8042705484d2fb0aad3

MSG_BATCH sendmsg flag for performance optimization was added
in linux commit f092276d85b82504e8a07498f4e9e0c51f06745c

SOL_* macros are now synced with linux socket.h which is not a uapi
header and glibc did not have the macros either, but that has changed
http://sourceware.org/ml/libc-alpha/2016-05/msg00322.html
---
 include/sys/socket.h | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/include/sys/socket.h b/include/sys/socket.h
index 1904b74..e96c268 100644
--- a/include/sys/socket.h
+++ b/include/sys/socket.h
@@ -109,7 +109,8 @@ struct linger
 #define PF_ALG          38
 #define PF_NFC          39
 #define PF_VSOCK        40
-#define PF_MAX          41
+#define PF_KCM          41
+#define PF_MAX          42
 
 #define AF_UNSPEC       PF_UNSPEC
 #define AF_LOCAL        PF_LOCAL
@@ -155,6 +156,7 @@ struct linger
 #define AF_ALG          PF_ALG
 #define AF_NFC          PF_NFC
 #define AF_VSOCK        PF_VSOCK
+#define AF_KCM          PF_KCM
 #define AF_MAX          PF_MAX
 
 #ifndef SO_DEBUG
@@ -239,6 +241,21 @@ struct linger
 #define SOL_ATM         264
 #define SOL_AAL         265
 #define SOL_IRDA        266
+#define SOL_NETBEUI     267
+#define SOL_LLC         268
+#define SOL_DCCP        269
+#define SOL_NETLINK     270
+#define SOL_TIPC        271
+#define SOL_RXRPC       272
+#define SOL_PPPOL2TP    273
+#define SOL_BLUETOOTH   274
+#define SOL_PNPIPE      275
+#define SOL_RDS         276
+#define SOL_IUCV        277
+#define SOL_CAIF        278
+#define SOL_ALG         279
+#define SOL_NFC         280
+#define SOL_KCM         281
 
 #define SOMAXCONN       128
 
@@ -259,6 +276,7 @@ struct linger
 #define MSG_NOSIGNAL  0x4000
 #define MSG_MORE      0x8000
 #define MSG_WAITFORONE 0x10000
+#define MSG_BATCH     0x40000
 #define MSG_FASTOPEN  0x20000000
 #define MSG_CMSG_CLOEXEC 0x40000000
 
-- 
2.8.1



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

end of thread, other threads:[~2016-05-26 20:07 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-26 20:04 [PATCH 0/7] linux v4.6 update Szabolcs Nagy
2016-05-26 20:04 ` [PATCH 1/7] add preadv2 and pwritev2 syscall numbers for linux v4.6 Szabolcs Nagy
2016-05-26 20:05 ` [PATCH 2/7] add SO_CNX_ADVICE to sys/socket.h, new in " Szabolcs Nagy
2016-05-26 20:05 ` [PATCH 3/7] add ETH_P_MACSEC netinet/if_ether.h, " Szabolcs Nagy
2016-05-26 20:06 ` [PATCH 4/7] update siginfo struct for " Szabolcs Nagy
2016-05-26 20:06 ` [PATCH 5/7] add CLONE_NEWCGROUP clone flag, new in " Szabolcs Nagy
2016-05-26 20:07 ` [PATCH 6/7] add new tcp_info fields from " Szabolcs Nagy
2016-05-26 20:07 ` [PATCH 7/7] update sys/socket.h to " Szabolcs Nagy

Code repositories for project(s) associated with this public inbox

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

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).