1. 16 11月, 2012 2 次提交
  2. 15 11月, 2012 7 次提交
  3. 14 11月, 2012 6 次提交
  4. 13 11月, 2012 12 次提交
  5. 12 11月, 2012 4 次提交
    • R
      debloat src/thread tree but putting lots of junk in one file · c4a35f8c
      Rich Felker 提交于
      POSIX includes mostly-useless attribute-get functions for each
      attribute-set function, presumably out of some object-oriented
      dogmatism. the get functions are not useful with the simple idiomatic
      usage of attributes. there are of course possible valid uses of them
      (like writing wrappers for pthread init functions that perform special
      actions on the presence of certain attributes), but considering how
      tiny these functions are anyway, little is lost by putting them all in
      one file, and some build-time cost and archive-file-size benefits are
      achieved.
      c4a35f8c
    • R
      report support of TPS option in unistd.h and sysconf · 7df42e87
      Rich Felker 提交于
      also update another newish feature in sysconf, stackaddr
      7df42e87
    • R
      add support for thread scheduling (POSIX TPS option) · 1e21e78b
      Rich Felker 提交于
      linux's sched_* syscalls actually implement the TPS (thread
      scheduling) functionality, not the PS (process scheduling)
      functionality which the sched_* functions are supposed to have.
      omitting support for the PS option (and having the sched_* interfaces
      fail with ENOSYS rather than omitting them, since some broken software
      assumes they exist) seems to be the only conforming way to do this on
      linux.
      1e21e78b
    • R
      fix clobber of edx in i386 vsyscall asm · e9b885ee
      Rich Felker 提交于
      this function does not obey the normal calling convention; like a
      syscall instruction, it's expected not to clobber any registers except
      the return value. clobbering edx could break callers that were reusing
      the value cached in edx after the syscall returns.
      e9b885ee
  6. 10 11月, 2012 2 次提交
    • R
      always add memory streams to stdio open file list · dc059f03
      Rich Felker 提交于
      per interpretation for austin group issue #626, fflush(0) and exit()
      must block waiting for a lock if another thread has locked a memory
      stream with flockfile. this adds some otherwise-unnecessary
      synchronization cost to use of memory streams, but there was already a
      synchronization cost calling malloc anyway.
      
      previously the stream was only added to the open file list in
      single-threaded programs, so that upon subsequent call to
      pthread_create, locking could be turned on for the stream.
      dc059f03
    • R
      support ldso path files without final newline · 65465101
      Rich Felker 提交于
      65465101
  7. 09 11月, 2012 5 次提交
    • R
      change ldso path file logic to replace rather than add to search path · 40d5f7eb
      Rich Felker 提交于
      this change was originally intended just to avoid repeated attempts to
      open a nonexistant /etc/ls-musl-$(ARCH).path file, but I realized it
      also prevents the default paths from being searched when such a path
      file exists. despite the potential to break existing usage, I believe
      the new behavior is the right behavior, and it's better to fix it
      sooner rather than later. with the old behavior, it was impossible to
      inhibit search of default paths which might contain musl-incompatible
      libs (or even libs from a different cpu arch, on multi-arch machines).
      40d5f7eb
    • R
      fix "configure --prefix=" and improve path/arg handling in configure · 3d9e3a30
      Rich Felker 提交于
      previously, empty string was treated as "use default". this is
      apparently not compatible with standard configure semantics where an
      empty prefix puts everything under /. the new logic should be a lot
      cleaner and not suffer from such issues.
      3d9e3a30
    • R
      clean up sloppy nested inclusion from pthread_impl.h · efd4d87a
      Rich Felker 提交于
      this mirrors the stdio_impl.h cleanup. one header which is not
      strictly needed, errno.h, is left in pthread_impl.h, because since
      pthread functions return their error codes rather than using errno,
      nearly every single pthread function needs the errno constants.
      
      in a few places, rather than bringing in string.h to use memset, the
      memset was replaced by direct assignment. this seems to generate much
      better code anyway, and makes many functions which were previously
      non-leaf functions into leaf functions (possibly eliminating a great
      deal of bloat on some platforms where non-leaf functions require ugly
      prologue and/or epilogue).
      efd4d87a
    • R
      clean up stdio_impl.h · 835f9f95
      Rich Felker 提交于
      this header evolved to facilitate the extremely lazy practice of
      omitting explicit includes of the necessary headers in individual
      stdio source files; not only was this sloppy, but it also increased
      build time.
      
      now, stdio_impl.h is only including the headers it needs for its own
      use; any further headers needed by source files are included directly
      where needed.
      835f9f95
    • R
      fix dlsym asm for mips · 1e717ea3
      Rich Felker 提交于
      saving the return address from the delay slot is not valid -- by the
      time the instruction executes, the return address has already been
      replaced.
      1e717ea3
  8. 06 11月, 2012 2 次提交
    • R
      improve SOCK_NONBLOCK/SOCK_CLOEXEC fallback code · e8a0b27a
      Rich Felker 提交于
      checking for EINVAL should be sufficient, but qemu user emulation
      returns EPROTONOSUPPORT in some of the failure cases, and it seems
      conceivable that other kernels doing linux-emulation could make the
      same mistake. since DNS lookups and other important code might break
      if the fallback does not get invoked, be extra careful and check for
      either error.
      
      note that it's important NOT to perform the fallback code on other
      errors such as resource-exhaustion cases, since the fallback is not
      atomic and will lead to file-descriptor leaks in multi-threaded
      programs that use exec. the fallback code is only "safe" to run when
      the initial failure is caused by the application's choice of
      arguments, not the system state.
      e8a0b27a
    • R
      fix numerous mips abi constant definition mismatches · 32d6d77e
      Rich Felker 提交于
      32d6d77e