1. 30 5月, 2014 1 次提交
    • R
      support linux kernel apis (new archs) with old syscalls removed · dd5f50da
      Rich Felker 提交于
      such archs are expected to omit definitions of the SYS_* macros for
      syscalls their kernels lack from arch/$ARCH/bits/syscall.h. the
      preprocessor is then able to select the an appropriate implementation
      for affected functions. two basic strategies are used on a
      case-by-case basis:
      
      where the old syscalls correspond to deprecated library-level
      functions, the deprecated functions have been converted to wrappers
      for the modern function, and the modern function has fallback code
      (omitted at the preprocessor level on new archs) to make use of the
      old syscalls if the new syscall fails with ENOSYS. this also improves
      functionality on older kernels and eliminates the incentive to program
      with deprecated library-level functions for the sake of compatibility
      with older kernels.
      
      in other situations where the old syscalls correspond to library-level
      functions which are not deprecated but merely lack some new features,
      such as the *at functions, the old syscalls are still used on archs
      which support them. this may change at some point in the future if or
      when fallback code is added to the new functions to make them usable
      (possibly with reduced functionality) on old kernels.
      dd5f50da
  2. 22 5月, 2012 1 次提交
  3. 20 3月, 2011 1 次提交
  4. 16 2月, 2011 1 次提交
    • R
      remove standalone syscall cruft · 9b235e83
      Rich Felker 提交于
      this was originally written for an early draft of the library where
      non-standard functions would reside in a static library separate from
      the shared libc.so, which would implement a pure standard. the idea
      was not to depend on an implementation-dependent __syscall_ret
      function in the main libc. but it turned out to be better to put
      everything in a single library for both static and dynamic linking
      uses, and thus the (incomplete) remnants of this feature were just
      enlarging the source and binary.
      9b235e83
  5. 12 2月, 2011 1 次提交