1. 04 7月, 2016 2 次提交
  2. 29 6月, 2016 2 次提交
  3. 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
  4. 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
  5. 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
  6. 27 1月, 2016 4 次提交
  7. 25 1月, 2016 3 次提交
  8. 22 7月, 2015 1 次提交
  9. 29 5月, 2015 1 次提交
  10. 18 4月, 2015 2 次提交
  11. 05 3月, 2015 1 次提交
  12. 10 2月, 2015 1 次提交
    • S
      add new socket options SO_INCOMING_CPU, SO_ATTACH_BPF, SO_DETACH_BPF · 70572dce
      Szabolcs Nagy 提交于
      these socket options are new in linux v3.19, introduced in commit
      2c8c56e15df3d4c2af3d656e44feb18789f75837 and commit
      89aa075832b0da4402acebd698d0411dcc82d03e
      
      with SO_INCOMING_CPU the cpu can be queried on which a socket is
      managed inside the kernel and optimize polling of large number of
      sockets accordingly.
      
      SO_ATTACH_BPF lets eBPF programs (created by the bpf syscall) to
      be attached to sockets.
      70572dce
  13. 31 1月, 2015 1 次提交
    • T
      move MREMAP_MAYMOVE and MREMAP_FIXED out of bits · 2d67ae92
      Trutz Behn 提交于
      the definitions are generic for all kernel archs. exposure of these
      macros now only occurs on the same feature test as for the function
      accepting them, which is believed to be more correct.
      2d67ae92
  14. 23 12月, 2014 1 次提交
    • S
      add new prctl command PR_SET_MM_MAP to sys/prctl.h · 11ac2a6e
      Szabolcs Nagy 提交于
      PR_SET_MM_MAP was introduced as a subcommand for PR_SET_MM in
      linux v3.18 commit f606b77f1a9e362451aca8f81d8f36a3a112139e
      
      the associated struct type is replicated in sys/prctl.h using
      libc types.
      
      example usage:
      
       struct prctl_mm_map *p;
       ...
       prctl(PR_SET_MM, PR_SET_MM_MAP, p, sizeof *p);
      
      the kernel side supported struct size may be queried with
      the PR_SET_MM_MAP_SIZE subcommand.
      11ac2a6e
  15. 06 9月, 2014 1 次提交
  16. 21 7月, 2014 1 次提交
  17. 20 6月, 2014 1 次提交
    • R
      implement sendmmsg and recvmmsg · acb7e049
      Rich Felker 提交于
      these are not pure syscall wrappers because they have to work around
      kernel API bugs on 64-bit archs. the workarounds could probably be
      made somewhat more efficient, but at the cost of more complexity. this
      may be revisited later.
      acb7e049
  18. 31 5月, 2014 2 次提交
  19. 16 4月, 2014 1 次提交
    • S
      fix RLIMIT_ constants for mips · fcea534e
      Szabolcs Nagy 提交于
      The mips arch is special in that it uses different RLIMIT_
      numbers than other archs, so allow bits/resource.h to override
      the default RLIMIT_ numbers (empty on all archs except mips).
      Reported by orc.
      fcea534e
  20. 07 4月, 2014 1 次提交
    • R
      add getauxval function · 21ada94c
      Rich Felker 提交于
      in a sense this implementation is incomplete since it doesn't provide
      the HWCAP_* macros for use with AT_HWCAP, which is perhaps the most
      important intended usage case for getauxval. they will be added at a
      later time.
      21ada94c
  21. 12 3月, 2014 1 次提交
    • R
      move struct semid_ds to from shared sys/sem.h to bits · f6e2f7e1
      Rich Felker 提交于
      the definition was found to be incorrect at least for powerpc, and
      fixing this cleanly requires making the definition arch-specific. this
      will allow cleaning up the definition for other archs to make it more
      specific, and reversing some of the ugliness (time_t hacks) introduced
      with the x32 port.
      
      this first commit simply copies the existing definition to each arch
      without any changes. this is intentional, to make it easier to review
      changes made on a per-arch basis.
      f6e2f7e1
  22. 08 3月, 2014 1 次提交
    • R
      in sys/procfs.h, avoid using __WORDSIZE macro · 73f5b096
      Rich Felker 提交于
      this was problematic because several archs don't define __WORDSIZE. we
      could add it, but I would rather phase this macro out in the long
      term. in our version of the headers, UINTPTR_MAX is available here, so
      just use it instead.
      73f5b096
  23. 25 2月, 2014 1 次提交
  24. 23 2月, 2014 1 次提交
  25. 22 2月, 2014 1 次提交
  26. 11 2月, 2014 1 次提交