1. 20 6月, 2018 2 次提交
  2. 23 2月, 2018 8 次提交
    • H
      add getrandom syscall wrapper · e2065820
      Hauke Mehrtens 提交于
      This syscall is available since Linux 3.17 and was also implemented in
      glibc in version 2.25 using the same interfaces.
      e2065820
    • S
      sys/prctl.h: add new PR_SVE_* macros from linux v4.15 · 121d18d2
      Szabolcs Nagy 提交于
      PR_SVE_SET_VL and PR_SVE_GET_VL controls are new in linux commit
      2d2123bc7c7f843aa9db87720de159a049839862
      related PR_SVE_* macros were added in
      7582e22038a266444eb87bc07c372592ad647439
      121d18d2
    • S
      add MAP_SYNC and MAP_SHARED_VALIDATE from linux v4.15 · 9b57db3f
      Szabolcs Nagy 提交于
      for synchronous page faults, new in linux commit
      1c9725974074a047f6080eecc62c50a8e840d050 and
      b6fb293f2497a9841d94f6b57bd2bb2cd222da43
      note that only targets that use asm-generic/mman.h have this new
      flag defined, so undef it on other targets (mips*, powerpc*).
      9b57db3f
    • S
      sys/{mman,shm}.h: add {MAP,SHM}_HUGE_ macros from linux uapi · abdaba86
      Szabolcs Nagy 提交于
      *_HUGE_SHIFT, *_HUGE_2MB, *_HUGE_1GB are documented in the man page,
      so add all of the *_HUGE_* macros from linux uapi.
      
      if MAP_HUGETLB is set, top bits of the mmap flags encode the page size.
      see the linux commit aafd4562dfee81a40ba21b5ea3cf5e06664bc7f6
      
      if SHM_HUGETLB is set, top bits of the shmget flags encode the page size.
      see the linux commit 4da243ac1cf6aeb30b7c555d56208982d66d6d33
      
      *_HUGE_16GB is defined unsigned to avoid signed left shift ub.
      abdaba86
    • S
      sys/mman.h: add MADV_WIPEONFORK from linux v4.14 · 5431c200
      Szabolcs Nagy 提交于
      allows zeroing anonymous private pages inherited by a child process.
      new in linux commit d2cd9ede6e193dd7d88b6d27399e96229a551b19
      5431c200
    • S
      sys/socket.h: add MSG_ZEROCOPY from linux v4.14 · 986bc217
      Szabolcs Nagy 提交于
      MSG_ZEROCOPY socket send flag avoids copy in the kernel
      new in linux commit 52267790ef52d7513879238ca9fac22c1733e0e3
      SO_ZEROCOPY socket option enables MSG_ZEROCOPY if availale
      new in linux commit 76851d1212c11365362525e1e2c0a18c97478e6b
      986bc217
    • S
      sys/socket.h: add SOL_TLS from linux v4.13 · 404097a4
      Szabolcs Nagy 提交于
      socket option for kernel TLS support
      new in linux commit 3c4d7559159bfe1e3b94df3a657b2cda3a34e218
      404097a4
    • S
      sys/socket.h: add PF_SMC from linux v4.11 · 709bbf51
      Szabolcs Nagy 提交于
      add AF_SMC and PF_SMC for the IBM shared memory communication protocol.
      new in linux commit ac7138746e14137a451f8539614cdd349153e0c0
      (linux socket.h is not in uapi so this update was missed earlier)
      709bbf51
  3. 10 1月, 2018 1 次提交
    • H
      add additional uapi guards for Linux kernel header files · b583c5d3
      Hauke Mehrtens 提交于
      With Linux kernel 4.16 it will be possible to guard more parts of the
      Linux header files from a libc. Make use of this in musl to guard all
      the structures and other definitions from the Linux header files which
      are also defined by the header files provided by musl. This will make
      it possible to compile source files which include both the libc
      headers and the kernel userspace headers.
      
      This extends the definitions done in commit 04983f22 ("make
      netinet/in.h suppress clashing definitions from kernel headers")
      b583c5d3
  4. 06 11月, 2017 4 次提交
  5. 30 12月, 2016 1 次提交
  6. 08 11月, 2016 1 次提交
  7. 21 10月, 2016 3 次提交
  8. 20 10月, 2016 1 次提交
    • S
      add bits/hwcap.h and include it in sys/auxv.h · fe39aaae
      Szabolcs Nagy 提交于
      aarch64, arm, mips, mips64, mipsn32, powerpc, powerpc64 and sh have
      cpu feature bits defined in linux for AT_HWCAP auxv entry, so expose
      those in sys/auxv.h
      
      it seems the mips hwcaps were never exposed to userspace neither
      by linux nor by glibc, but that's most likely an oversight.
      fe39aaae
  9. 31 8月, 2016 1 次提交
  10. 04 7月, 2016 3 次提交
  11. 29 6月, 2016 2 次提交
  12. 10 6月, 2016 3 次提交
    • R
      avoid padding gaps in struct sockaddr_storage · 1e6fc0b6
      Rich Felker 提交于
      compilers are free not to copy, or in some cases to clobber, padding
      bytes in a structure. while it's an aliasing violation, and thus
      undefined behavior, to copy or manipulate other sockaddr types using
      sockaddr_storage, it seems likely that traditional code attempts to do
      so, and the original intent of the sockaddr_storage structure was
      probably to allow such usage.
      
      in the interest of avoiding silent and potentially dangerous breakage,
      ensure that there are no actual padding bytes in sockaddr_storage by
      moving and adjusting the size of the __ss_padding member so that it
      fits exactly.
      
      this change also removes a silent assumption that the alignment of
      long is equal to its size.
      1e6fc0b6
    • S
      update sys/socket.h to linux v4.6 · a0bb50a1
      Szabolcs Nagy 提交于
      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
      a0bb50a1
    • S
      add SO_CNX_ADVICE to sys/socket.h, new in linux v4.6 · f6f4aa5d
      Szabolcs Nagy 提交于
      new socket option so application can give advice about routing
      path quality of connected udp sockets, added in linux commit
      a87cb3e48ee86d29868d3f59cfb9ce1a8fa63314
      f6f4aa5d
  13. 23 5月, 2016 1 次提交
    • R
      fix undefined pointer arithmetic in CMSG_NXTHDR macro · 81fb75a1
      Rich Felker 提交于
      previously, the only way the stopping condition could be met with
      correct lengths in the headers invoked undefined behavior, adding
      sizeof(struct cmsghdr) beyond the end of the cmsg buffer.
      
      instead, compute and compare sizes rather than pointers.
      81fb75a1
  14. 19 3月, 2016 4 次提交
    • S
      add MADV_FREE madvise command from linux v4.5 · d578c74e
      Szabolcs Nagy 提交于
      allows the os to free the marked pages lazily on memory pressure.
      expected to increase malloc performance.
      new in linux commit 854e9ed09dedf0c19ac8640e91bcc74bc3f9e5c9
      d578c74e
    • S
      add EPOLLEXCLUSIVE epoll flag from linux v4.5 · b10ca0f5
      Szabolcs Nagy 提交于
      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
      b10ca0f5
    • S
      add SO_ATTACH_REUSEPORT_[CE]BPF socket options from linux v4.5 · c1aabc6c
      Szabolcs Nagy 提交于
      new socket options for setting classic or extended BPF program
      for sockets in a SO_REUSEPORT group.  added in linux commit
      538950a1b7527a0a52ccd9337e3fcd304f027f13
      c1aabc6c
    • S
      deduplicate bits/mman.h · e9f1c798
      Szabolcs Nagy 提交于
      currently five targets use the same mman.h constants and the rest
      share most constants too, so move them to sys/mman.h before the
      bits/mman.h include where the differences can be corrected by
      redefinition of the macros.
      
      this fixes two minor bugs: POSIX_MADV_DONTNEED was wrong on most
      targets (it should be the same as MADV_DONTNEED), and sh defined
      the x86-only MAP_32BIT mmap flag.
      e9f1c798
  15. 27 1月, 2016 4 次提交
  16. 25 1月, 2016 1 次提交