summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* trie: Arena-allocate nodes and leavesTavian Barnes2023-06-202-34/+36
|
* bftw: Arena-allocate struct bftw_fileTavian Barnes2023-06-201-5/+11
|
* alloc: Implement an arena for flexible structsTavian Barnes2023-06-202-0/+210
|
* alloc: Implement an arena allocatorTavian Barnes2023-06-202-0/+155
|
* alloc: New header for memory allocation utilitiesTavian Barnes2023-06-2019-183/+243
|
* bfstd: New xmemdup() functionTavian Barnes2023-06-203-5/+22
|
* sanity: Suppress unused variable warnings with sanitizers offTavian Barnes2023-06-201-2/+7
|
* parse: Shell-escape arguments in diagnosticsTavian Barnes2023-06-161-6/+6
|
* diag: Shell-escape arguments for argv warnings/errorsTavian Barnes2023-06-161-3/+20
|
* color: New %pq formatter for shell-escaped stringsTavian Barnes2023-06-162-0/+19
|
* bfstd: New wordesc() function to shell-escape stringsTavian Barnes2023-06-162-0/+59
|
* opt: Wait until purity is computed to update facts_when_impureTavian Barnes2023-06-161-4/+2
| | | | | | | | | | | Since we moved purity out of the parser, side-effect detection has been unnecessarily pessimistic due to this bug. The fix restores warnings in cases like $ bfs -false bfs: warning: This command won't do anything. Fixes: 693b5f60dc9787d9237920cc0c87fe0e010194ee
* ioq: Implement a non-blocking fast pathTavian Barnes2023-06-151-98/+107
|
* ioq: Use a circular bufferTavian Barnes2023-06-151-78/+201
|
* bfstd: Add an aligned_alloc()/posix_memalign() wrapperTavian Barnes2023-06-142-0/+26
|
* config: Add macros for false/true sharing sizesTavian Barnes2023-06-141-0/+23
|
* parse: Don't default to depth-first when argv[0] is "find"Tavian Barnes2023-06-141-6/+0
|
* sanity: Make sanitize_[un]init() always a void expressionTavian Barnes2023-06-141-2/+2
|
* lock: Add missing <string.h> includeTavian Barnes2023-06-131-0/+1
|
* dir: New bfs_polldir() function for directory readaheadTavian Barnes2023-06-133-22/+80
|
* eval: Pre-allocate the highest fdTavian Barnes2023-06-131-0/+18
| | | | | | This avoids the need to grow the fd table during the search, significantly reducing kernel contention when opening directories in parallel.
* bftw: Use an I/O queue to open directoriesTavian Barnes2023-06-136-8/+199
| | | | Parallelism is controlled by the new -j flag.
* bftw: Implement open file pinningTavian Barnes2023-06-121-32/+100
|
* dir: Add a flag to bfs_freedir() to force the fd to stay the sameTavian Barnes2023-06-124-9/+24
|
* ioq: Implement an async I/O queueTavian Barnes2023-06-123-0/+379
|
* xtime: Make lazy tzset() call thread-safeTavian Barnes2023-06-121-10/+12
|
* xregex: Initialize Oniguruma thread-safelyTavian Barnes2023-06-121-16/+24
|
* stat: Make syscall support checks thread-safeTavian Barnes2023-06-121-6/+7
|
* fsade: Make syscall support checks thread-safeTavian Barnes2023-06-121-6/+7
|
* atomic: Add shorthands for explicit atomic operationsTavian Barnes2023-06-122-0/+86
|
* lock: Add wrappers for POSIX synchronization primitivesTavian Barnes2023-06-122-0/+85
|
* eval: For -ls, track the longest user/group names to keep alignmentTavian Barnes2023-06-081-20/+26
|
* eval: Print non-path -ls text in the "normal" color, like ls -lTavian Barnes2023-06-081-1/+6
|
* color: `fi=0` should not fall back to `no`Tavian Barnes2023-06-081-4/+4
|
* main: Add some missing headers to the overviewTavian Barnes2023-05-251-0/+3
|
* fsade: Add missing #include "sanity.h"Tavian Barnes2023-05-251-0/+1
|
* sanity: Add wrappers for sanitizer interfacesTavian Barnes2023-05-257-36/+110
|
* list: Allow popping from an empty listTavian Barnes2023-05-242-17/+6
|
* list: Return the removed item from SLIST_POP()Tavian Barnes2023-05-203-12/+19
|
* Switch from assert() to bfs_assert()/bfs_verify()Tavian Barnes2023-05-1812-66/+57
|
* diag: New bfs_verify() and bfs_assert() macrosTavian Barnes2023-05-181-0/+22
|
* Use bfs_bug("...") over assert(!"...")Tavian Barnes2023-05-187-14/+15
|
* diag: New bfs_abort() and bfs_bug() macrosTavian Barnes2023-05-182-1/+33
|
* config: Include <stdnoreturn.h>Tavian Barnes2023-05-181-0/+1
|
* bar: Use USHRT_WIDTHTavian Barnes2023-05-181-2/+2
|
* trie: Use SIZE_WIDTHTavian Barnes2023-05-181-6/+6
|
* bit: Rename int.h to bit.hTavian Barnes2023-05-182-4/+4
|
* Use SYS_* instead of __NR_*Tavian Barnes2023-05-162-3/+3
|
* config: Align after saturating in flex_sizeof()Tavian Barnes2023-05-161-2/+9
| | | | | This ensures that it's legal to call aligned_alloc() with the result, which requires a multiple of the alignment.
* trie: Use standard bit utilitiesTavian Barnes2023-05-161-44/+15
|