mailing list of musl libc
 help / color / mirror / code / Atom feed
* [PATCH 0/6] linux v4.5 updates
@ 2016-03-19 12:34 Szabolcs Nagy
  2016-03-19 12:35 ` [PATCH 1/6] mips64: add recent linux syscall numbers Szabolcs Nagy
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:34 UTC (permalink / raw)
  To: musl

update musl headers following linux v4.5 uapi changes.

Szabolcs Nagy (6):
  mips64: add recent linux syscall numbers
  add copy_file_range syscall numbers from linux v4.5
  add IPV6_HDRINCL socket option from linux v4.5
  add SO_ATTACH_REUSEPORT_[CE]BPF socket options from linux v4.5
  add EPOLLEXCLUSIVE epoll flag from linux v4.5
  add MADV_FREE madvise command from linux v4.5

 arch/aarch64/bits/syscall.h | 2 ++
 arch/arm/bits/syscall.h     | 2 ++
 arch/i386/bits/syscall.h    | 2 ++
 arch/mips/bits/syscall.h    | 2 ++
 arch/mips64/bits/syscall.h  | 8 ++++++++
 arch/or1k/bits/syscall.h    | 2 ++
 arch/powerpc/bits/syscall.h | 2 ++
 arch/x32/bits/syscall.h     | 2 ++
 arch/x86_64/bits/syscall.h  | 2 ++
 include/netinet/in.h        | 1 +
 include/sys/epoll.h         | 1 +
 include/sys/mman.h          | 1 +
 include/sys/socket.h        | 3 ++-
 13 files changed, 29 insertions(+), 1 deletion(-)

-- 
2.7.2



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

* [PATCH 1/6] mips64: add recent linux syscall numbers
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
@ 2016-03-19 12:35 ` Szabolcs Nagy
  2016-03-19 12:35 ` [PATCH 2/6] add copy_file_range syscall numbers from linux v4.5 Szabolcs Nagy
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:35 UTC (permalink / raw)
  To: musl

add userfaultfd, membarrier and mlock2 system call numbers.
---
 arch/mips64/bits/syscall.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/mips64/bits/syscall.h b/arch/mips64/bits/syscall.h
index d9b4f42..8c81882 100644
--- a/arch/mips64/bits/syscall.h
+++ b/arch/mips64/bits/syscall.h
@@ -314,6 +314,9 @@
 #define __NR_memfd_create		5314
 #define __NR_bpf			5315
 #define __NR_execveat			5316
+#define __NR_userfaultfd		5317
+#define __NR_membarrier			5318
+#define __NR_mlock2			5319
 
 #define SYS_read			5000
 #define SYS_write			5001
@@ -631,3 +634,6 @@
 #define SYS_memfd_create		5314
 #define SYS_bpf				5315
 #define SYS_execveat			5316
+#define SYS_userfaultfd			5317
+#define SYS_membarrier			5318
+#define SYS_mlock2			5319
-- 
2.7.2



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

* [PATCH 2/6] add copy_file_range syscall numbers from linux v4.5
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
  2016-03-19 12:35 ` [PATCH 1/6] mips64: add recent linux syscall numbers Szabolcs Nagy
@ 2016-03-19 12:35 ` Szabolcs Nagy
  2016-03-19 12:36 ` [PATCH 3/6] add IPV6_HDRINCL socket option " Szabolcs Nagy
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:35 UTC (permalink / raw)
  To: musl

it was introduced for offloading copying between regular files
in linux commit 29732938a6289a15e907da234d6692a2ead71855

(microblaze and sh does not yet have the syscall number.)
---
 arch/aarch64/bits/syscall.h | 2 ++
 arch/arm/bits/syscall.h     | 2 ++
 arch/i386/bits/syscall.h    | 2 ++
 arch/mips/bits/syscall.h    | 2 ++
 arch/mips64/bits/syscall.h  | 2 ++
 arch/or1k/bits/syscall.h    | 2 ++
 arch/powerpc/bits/syscall.h | 2 ++
 arch/x32/bits/syscall.h     | 2 ++
 arch/x86_64/bits/syscall.h  | 2 ++
 9 files changed, 18 insertions(+)

diff --git a/arch/aarch64/bits/syscall.h b/arch/aarch64/bits/syscall.h
index 31bed73..eddbe92 100644
--- a/arch/aarch64/bits/syscall.h
+++ b/arch/aarch64/bits/syscall.h
@@ -268,6 +268,7 @@
 #define __NR_userfaultfd 282
 #define __NR_membarrier 283
 #define __NR_mlock2 284
+#define __NR_copy_file_range 285
 
 #define SYS_io_setup __NR_io_setup
 #define SYS_io_destroy __NR_io_destroy
@@ -539,3 +540,4 @@
 #define SYS_userfaultfd __NR_userfaultfd
 #define SYS_membarrier __NR_membarrier
 #define SYS_mlock2 __NR_mlock2
+#define SYS_copy_file_range __NR_copy_file_range
diff --git a/arch/arm/bits/syscall.h b/arch/arm/bits/syscall.h
index 036c562..be30be7 100644
--- a/arch/arm/bits/syscall.h
+++ b/arch/arm/bits/syscall.h
@@ -344,6 +344,7 @@
 #define __NR_userfaultfd	388
 #define __NR_membarrier		389
 #define __NR_mlock2		390
+#define __NR_copy_file_range	391
 
 #define __ARM_NR_breakpoint	0x0f0001
 #define __ARM_NR_cacheflush	0x0f0002
@@ -699,3 +700,4 @@
 #define SYS_userfaultfd	388
 #define SYS_membarrier		389
 #define SYS_mlock2		390
+#define SYS_copy_file_range	391
diff --git a/arch/i386/bits/syscall.h b/arch/i386/bits/syscall.h
index b1a389b..25cd50a 100644
--- a/arch/i386/bits/syscall.h
+++ b/arch/i386/bits/syscall.h
@@ -375,6 +375,7 @@
 #define __NR_userfaultfd	374
 #define __NR_membarrier		375
 #define __NR_mlock2		376
+#define __NR_copy_file_range	377
 
 
 /* Repeated with SYS_ prefix */
@@ -756,3 +757,4 @@
 #define SYS_userfaultfd		374
 #define SYS_membarrier		375
 #define SYS_mlock2		376
+#define SYS_copy_file_range	377
diff --git a/arch/mips/bits/syscall.h b/arch/mips/bits/syscall.h
index 340c587..40ca6ba 100644
--- a/arch/mips/bits/syscall.h
+++ b/arch/mips/bits/syscall.h
@@ -357,6 +357,7 @@
 #define __NR_userfaultfd             4357
 #define __NR_membarrier              4358
 #define __NR_mlock2                  4359
+#define __NR_copy_file_range         4360
 
 
 /* Repeated with SYS_ prefix */
@@ -719,3 +720,4 @@
 #define SYS_userfaultfd             4357
 #define SYS_membarrier              4358
 #define SYS_mlock2                  4359
+#define SYS_copy_file_range         4360
diff --git a/arch/mips64/bits/syscall.h b/arch/mips64/bits/syscall.h
index 8c81882..a84a519 100644
--- a/arch/mips64/bits/syscall.h
+++ b/arch/mips64/bits/syscall.h
@@ -317,6 +317,7 @@
 #define __NR_userfaultfd		5317
 #define __NR_membarrier			5318
 #define __NR_mlock2			5319
+#define __NR_copy_file_range		5320
 
 #define SYS_read			5000
 #define SYS_write			5001
@@ -637,3 +638,4 @@
 #define SYS_userfaultfd			5317
 #define SYS_membarrier			5318
 #define SYS_mlock2			5319
+#define SYS_copy_file_range		5320
diff --git a/arch/or1k/bits/syscall.h b/arch/or1k/bits/syscall.h
index a73b232..de810a4 100644
--- a/arch/or1k/bits/syscall.h
+++ b/arch/or1k/bits/syscall.h
@@ -268,6 +268,7 @@
 #define __NR_userfaultfd 282
 #define __NR_membarrier 283
 #define __NR_mlock2 284
+#define __NR_copy_file_range 285
 
 #define SYS_io_setup __NR_io_setup
 #define SYS_io_destroy __NR_io_destroy
@@ -539,3 +540,4 @@
 #define SYS_userfaultfd __NR_userfaultfd
 #define SYS_membarrier __NR_membarrier
 #define SYS_mlock2 __NR_mlock2
+#define SYS_copy_file_range __NR_copy_file_range
diff --git a/arch/powerpc/bits/syscall.h b/arch/powerpc/bits/syscall.h
index e02f56f..eb5295f 100644
--- a/arch/powerpc/bits/syscall.h
+++ b/arch/powerpc/bits/syscall.h
@@ -368,6 +368,7 @@
 #define __NR_userfaultfd           364
 #define __NR_membarrier            365
 #define __NR_mlock2                378
+#define __NR_copy_file_range       379
 
 /*
  * repeated with SYS prefix
@@ -742,3 +743,4 @@
 #define SYS_userfaultfd           364
 #define SYS_membarrier            365
 #define SYS_mlock2                378
+#define SYS_copy_file_range       379
diff --git a/arch/x32/bits/syscall.h b/arch/x32/bits/syscall.h
index 4a1099d..bd5ab3b 100644
--- a/arch/x32/bits/syscall.h
+++ b/arch/x32/bits/syscall.h
@@ -280,6 +280,7 @@
 #define __NR_userfaultfd (__X32_SYSCALL_BIT + 323)
 #define __NR_membarrier (__X32_SYSCALL_BIT + 324)
 #define __NR_mlock2 (__X32_SYSCALL_BIT + 325)
+#define __NR_copy_file_range (__X32_SYSCALL_BIT + 326)
 
 #define __NR_rt_sigaction (__X32_SYSCALL_BIT + 512)
 #define __NR_rt_sigreturn (__X32_SYSCALL_BIT + 513)
@@ -613,6 +614,7 @@
 #define SYS_userfaultfd __NR_userfaultfd
 #define SYS_membarrier __NR_membarrier
 #define SYS_mlock2 __NR_mlock2
+#define SYS_copy_file_range __NR_copy_file_range
 
 
 #define SYS_rt_sigaction __NR_rt_sigaction
diff --git a/arch/x86_64/bits/syscall.h b/arch/x86_64/bits/syscall.h
index 22aa716..1b02df9 100644
--- a/arch/x86_64/bits/syscall.h
+++ b/arch/x86_64/bits/syscall.h
@@ -324,6 +324,7 @@
 #define __NR_userfaultfd			323
 #define __NR_membarrier				324
 #define __NR_mlock2				325
+#define __NR_copy_file_range			326
 
 
 
@@ -655,3 +656,4 @@
 #define SYS_userfaultfd				323
 #define SYS_membarrier				324
 #define SYS_mlock2				325
+#define SYS_copy_file_range			326
-- 
2.7.2



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

* [PATCH 3/6] add IPV6_HDRINCL socket option from linux v4.5
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
  2016-03-19 12:35 ` [PATCH 1/6] mips64: add recent linux syscall numbers Szabolcs Nagy
  2016-03-19 12:35 ` [PATCH 2/6] add copy_file_range syscall numbers from linux v4.5 Szabolcs Nagy
@ 2016-03-19 12:36 ` Szabolcs Nagy
  2016-03-19 12:36 ` [PATCH 4/6] add SO_ATTACH_REUSEPORT_[CE]BPF socket options " Szabolcs Nagy
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:36 UTC (permalink / raw)
  To: musl

new in linux commit 715f504b118998c41a2079a17e16bf5a8a114885
same as IP_HDRINCL but for SOL_IPV6 sockets.
---
 include/netinet/in.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/netinet/in.h b/include/netinet/in.h
index 622bdfe..04cc81c 100644
--- a/include/netinet/in.h
+++ b/include/netinet/in.h
@@ -344,6 +344,7 @@ struct ip6_mtuinfo
 #define IPV6_LEAVE_ANYCAST      28
 #define IPV6_IPSEC_POLICY       34
 #define IPV6_XFRM_POLICY        35
+#define IPV6_HDRINCL            36
 
 #define IPV6_RECVPKTINFO        49
 #define IPV6_PKTINFO            50
-- 
2.7.2



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

* [PATCH 4/6] add SO_ATTACH_REUSEPORT_[CE]BPF socket options from linux v4.5
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
                   ` (2 preceding siblings ...)
  2016-03-19 12:36 ` [PATCH 3/6] add IPV6_HDRINCL socket option " Szabolcs Nagy
@ 2016-03-19 12:36 ` Szabolcs Nagy
  2016-03-19 12:37 ` [PATCH 5/6] add EPOLLEXCLUSIVE epoll flag " Szabolcs Nagy
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:36 UTC (permalink / raw)
  To: musl

new socket options for setting classic or extended BPF program
for sockets in a SO_REUSEPORT group.  added in linux commit
538950a1b7527a0a52ccd9337e3fcd304f027f13
---
 include/sys/socket.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/sys/socket.h b/include/sys/socket.h
index a4db940..fd65349 100644
--- a/include/sys/socket.h
+++ b/include/sys/socket.h
@@ -220,7 +220,8 @@ struct linger
 #define SO_INCOMING_CPU         49
 #define SO_ATTACH_BPF           50
 #define SO_DETACH_BPF           SO_DETACH_FILTER
-
+#define SO_ATTACH_REUSEPORT_CBPF 51
+#define SO_ATTACH_REUSEPORT_EBPF 52
 
 #ifndef SOL_SOCKET
 #define SOL_SOCKET      1
-- 
2.7.2



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

* [PATCH 5/6] add EPOLLEXCLUSIVE epoll flag from linux v4.5
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
                   ` (3 preceding siblings ...)
  2016-03-19 12:36 ` [PATCH 4/6] add SO_ATTACH_REUSEPORT_[CE]BPF socket options " Szabolcs Nagy
@ 2016-03-19 12:37 ` Szabolcs Nagy
  2016-03-19 12:37 ` [PATCH 6/6] add MADV_FREE madvise command " Szabolcs Nagy
  2016-03-19 15:33 ` [PATCH 0/6] linux v4.5 updates Rich Felker
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:37 UTC (permalink / raw)
  To: musl

new flag for exclusive wakeup mode when an event source fd is attached
to multiple epoll fds but they should not all receive the events.
new in linux commit df0108c5da561c66c333bb46bfe3c1fc65905898
---
 include/sys/epoll.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/sys/epoll.h b/include/sys/epoll.h
index 1f0312e..ffe2311 100644
--- a/include/sys/epoll.h
+++ b/include/sys/epoll.h
@@ -28,6 +28,7 @@ enum EPOLL_EVENTS { __EPOLL_DUMMY };
 #define EPOLLERR 0x008
 #define EPOLLHUP 0x010
 #define EPOLLRDHUP 0x2000
+#define EPOLLEXCLUSIVE (1U<<28)
 #define EPOLLWAKEUP (1U<<29)
 #define EPOLLONESHOT (1U<<30)
 #define EPOLLET (1U<<31)
-- 
2.7.2



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

* [PATCH 6/6] add MADV_FREE madvise command from linux v4.5
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
                   ` (4 preceding siblings ...)
  2016-03-19 12:37 ` [PATCH 5/6] add EPOLLEXCLUSIVE epoll flag " Szabolcs Nagy
@ 2016-03-19 12:37 ` Szabolcs Nagy
  2016-03-19 15:33 ` [PATCH 0/6] linux v4.5 updates Rich Felker
  6 siblings, 0 replies; 8+ messages in thread
From: Szabolcs Nagy @ 2016-03-19 12:37 UTC (permalink / raw)
  To: musl

allows the os to free the marked pages lazily on memory pressure.
expected to increase malloc performance.
new in linux commit 854e9ed09dedf0c19ac8640e91bcc74bc3f9e5c9
---
 include/sys/mman.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/sys/mman.h b/include/sys/mman.h
index 596a03a..8a5149c 100644
--- a/include/sys/mman.h
+++ b/include/sys/mman.h
@@ -62,6 +62,7 @@ extern "C" {
 #define MADV_SEQUENTIAL  2
 #define MADV_WILLNEED    3
 #define MADV_DONTNEED    4
+#define MADV_FREE        8
 #define MADV_REMOVE      9
 #define MADV_DONTFORK    10
 #define MADV_DOFORK      11
-- 
2.7.2



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

* Re: [PATCH 0/6] linux v4.5 updates
  2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
                   ` (5 preceding siblings ...)
  2016-03-19 12:37 ` [PATCH 6/6] add MADV_FREE madvise command " Szabolcs Nagy
@ 2016-03-19 15:33 ` Rich Felker
  6 siblings, 0 replies; 8+ messages in thread
From: Rich Felker @ 2016-03-19 15:33 UTC (permalink / raw)
  To: musl

On Sat, Mar 19, 2016 at 01:34:27PM +0100, Szabolcs Nagy wrote:
> update musl headers following linux v4.5 uapi changes.
> 
> Szabolcs Nagy (6):
>   mips64: add recent linux syscall numbers
>   add copy_file_range syscall numbers from linux v4.5
>   add IPV6_HDRINCL socket option from linux v4.5
>   add SO_ATTACH_REUSEPORT_[CE]BPF socket options from linux v4.5
>   add EPOLLEXCLUSIVE epoll flag from linux v4.5
>   add MADV_FREE madvise command from linux v4.5

All look good; committing them. Thanks for sending to the ML this
time; it makes applying them with git am very easy.

Rich


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

end of thread, other threads:[~2016-03-19 15:33 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-19 12:34 [PATCH 0/6] linux v4.5 updates Szabolcs Nagy
2016-03-19 12:35 ` [PATCH 1/6] mips64: add recent linux syscall numbers Szabolcs Nagy
2016-03-19 12:35 ` [PATCH 2/6] add copy_file_range syscall numbers from linux v4.5 Szabolcs Nagy
2016-03-19 12:36 ` [PATCH 3/6] add IPV6_HDRINCL socket option " Szabolcs Nagy
2016-03-19 12:36 ` [PATCH 4/6] add SO_ATTACH_REUSEPORT_[CE]BPF socket options " Szabolcs Nagy
2016-03-19 12:37 ` [PATCH 5/6] add EPOLLEXCLUSIVE epoll flag " Szabolcs Nagy
2016-03-19 12:37 ` [PATCH 6/6] add MADV_FREE madvise command " Szabolcs Nagy
2016-03-19 15:33 ` [PATCH 0/6] linux v4.5 updates Rich Felker

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