| Commit message (Expand) | Author | Age | Files | Lines |
| * | add (currently stubbed due to stubbed strverscmp) versionsort function•••based on patch by Emil Renner Berthing, with minor changes to dirent.h
for LFS64 and organization of declarations
this code should work unmodified once a real strverscmp is added, but
I've been hesitant to add it because the GNU strverscmp behavior is
harmful in a lot of cases (for instance if you have numeric filenames
in hex). at some point I plan on trying to design a variant of the
algorithm that behaves better on a mix of filename styles.
| Rich Felker | 2012-06-13 | 1 | -0/+8 |
| * | ditch the priority inheritance locks; use malloc's version of lock•••i did some testing trying to switch malloc to use the new internal
lock with priority inheritance, and my malloc contention test got
20-100 times slower. if priority inheritance futexes are this slow,
it's simply too high a price to pay for avoiding priority inversion.
maybe we can consider them somewhere down the road once the kernel
folks get their act together on this (and perferably don't link it to
glibc's inefficient lock API)...
as such, i've switch __lock to use malloc's implementation of
lightweight locks, and updated all the users of the code to use an
array with a waiter count for their locks. this should give optimal
performance in the vast majority of cases, and it's simple.
malloc is still using its own internal copy of the lock code because
it seems to yield measurably better performance with -O3 when it's
inlined (20% or more difference in the contention stress test).
| Rich Felker | 2012-04-24 | 5 | -12/+9 |
| * | fix errno value when fdopendir is given an invalid file descriptor•••this resolves an issue reported by Vasiliy Kulikov
| Rich Felker | 2011-07-21 | 1 | -1/+4 |
| * | optimize opendir using O_CLOEXEC | Rich Felker | 2011-06-25 | 1 | -2/+1 |
| * | fix handling of d_name in struct dirent•••basically there are 3 choices for how to implement this variable-size
string member:
1. C99 flexible array member: breaks using dirent.h with pre-C99 compiler.
2. old way: length-1 string: generates array bounds warnings in caller.
3. new way: length-NAME_MAX string. no problems, simplifies all code.
of course the usable part in the pointer returned by readdir might be
shorter than NAME_MAX+1 bytes, but that is allowed by the standard and
doesn't hurt anything.
| Rich Felker | 2011-06-06 | 1 | -4/+3 |
| * | avoid fd leak if opendir is cancelled when calloc has failed | Rich Felker | 2011-04-18 | 1 | -1/+2 |
| * | fix errno handling in scandir:•••1. saved errno was not being restored, illegally clearing errno to 0.
2. no need to backup and save errno around free; it will not touch
except perhaps when the program has already invoked UB...
| Rich Felker | 2011-04-11 | 1 | -2/+1 |
| * | global cleanup to use the new syscall interface | Rich Felker | 2011-03-20 | 1 | -1/+1 |
| * | finish moving 32-bit-specific junk out of source files. | Rich Felker | 2011-02-15 | 1 | -1/+1 |
| * | initial check-in, version 0.5.0 | Rich Felker | 2011-02-12 | 13 | -0/+244 |