Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | trie: Arena-allocate nodes and leaves | Tavian Barnes | 2023-06-20 | 2 | -34/+36 | |
| | ||||||
* | bftw: Arena-allocate struct bftw_file | Tavian Barnes | 2023-06-20 | 1 | -5/+11 | |
| | ||||||
* | alloc: Implement an arena for flexible structs | Tavian Barnes | 2023-06-20 | 2 | -0/+210 | |
| | ||||||
* | alloc: Implement an arena allocator | Tavian Barnes | 2023-06-20 | 2 | -0/+155 | |
| | ||||||
* | alloc: New header for memory allocation utilities | Tavian Barnes | 2023-06-20 | 19 | -183/+243 | |
| | ||||||
* | bfstd: New xmemdup() function | Tavian Barnes | 2023-06-20 | 3 | -5/+22 | |
| | ||||||
* | sanity: Suppress unused variable warnings with sanitizers off | Tavian Barnes | 2023-06-20 | 1 | -2/+7 | |
| | ||||||
* | parse: Shell-escape arguments in diagnostics | Tavian Barnes | 2023-06-16 | 1 | -6/+6 | |
| | ||||||
* | diag: Shell-escape arguments for argv warnings/errors | Tavian Barnes | 2023-06-16 | 1 | -3/+20 | |
| | ||||||
* | color: New %pq formatter for shell-escaped strings | Tavian Barnes | 2023-06-16 | 2 | -0/+19 | |
| | ||||||
* | bfstd: New wordesc() function to shell-escape strings | Tavian Barnes | 2023-06-16 | 2 | -0/+59 | |
| | ||||||
* | opt: Wait until purity is computed to update facts_when_impure | Tavian Barnes | 2023-06-16 | 1 | -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 path | Tavian Barnes | 2023-06-15 | 1 | -98/+107 | |
| | ||||||
* | ioq: Use a circular buffer | Tavian Barnes | 2023-06-15 | 1 | -78/+201 | |
| | ||||||
* | bfstd: Add an aligned_alloc()/posix_memalign() wrapper | Tavian Barnes | 2023-06-14 | 2 | -0/+26 | |
| | ||||||
* | config: Add macros for false/true sharing sizes | Tavian Barnes | 2023-06-14 | 1 | -0/+23 | |
| | ||||||
* | parse: Don't default to depth-first when argv[0] is "find" | Tavian Barnes | 2023-06-14 | 1 | -6/+0 | |
| | ||||||
* | sanity: Make sanitize_[un]init() always a void expression | Tavian Barnes | 2023-06-14 | 1 | -2/+2 | |
| | ||||||
* | lock: Add missing <string.h> include | Tavian Barnes | 2023-06-13 | 1 | -0/+1 | |
| | ||||||
* | dir: New bfs_polldir() function for directory readahead | Tavian Barnes | 2023-06-13 | 3 | -22/+80 | |
| | ||||||
* | eval: Pre-allocate the highest fd | Tavian Barnes | 2023-06-13 | 1 | -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 directories | Tavian Barnes | 2023-06-13 | 6 | -8/+199 | |
| | | | | Parallelism is controlled by the new -j flag. | |||||
* | bftw: Implement open file pinning | Tavian Barnes | 2023-06-12 | 1 | -32/+100 | |
| | ||||||
* | dir: Add a flag to bfs_freedir() to force the fd to stay the same | Tavian Barnes | 2023-06-12 | 4 | -9/+24 | |
| | ||||||
* | ioq: Implement an async I/O queue | Tavian Barnes | 2023-06-12 | 3 | -0/+379 | |
| | ||||||
* | xtime: Make lazy tzset() call thread-safe | Tavian Barnes | 2023-06-12 | 1 | -10/+12 | |
| | ||||||
* | xregex: Initialize Oniguruma thread-safely | Tavian Barnes | 2023-06-12 | 1 | -16/+24 | |
| | ||||||
* | stat: Make syscall support checks thread-safe | Tavian Barnes | 2023-06-12 | 1 | -6/+7 | |
| | ||||||
* | fsade: Make syscall support checks thread-safe | Tavian Barnes | 2023-06-12 | 1 | -6/+7 | |
| | ||||||
* | atomic: Add shorthands for explicit atomic operations | Tavian Barnes | 2023-06-12 | 2 | -0/+86 | |
| | ||||||
* | lock: Add wrappers for POSIX synchronization primitives | Tavian Barnes | 2023-06-12 | 2 | -0/+85 | |
| | ||||||
* | eval: For -ls, track the longest user/group names to keep alignment | Tavian Barnes | 2023-06-08 | 1 | -20/+26 | |
| | ||||||
* | eval: Print non-path -ls text in the "normal" color, like ls -l | Tavian Barnes | 2023-06-08 | 1 | -1/+6 | |
| | ||||||
* | color: `fi=0` should not fall back to `no` | Tavian Barnes | 2023-06-08 | 1 | -4/+4 | |
| | ||||||
* | main: Add some missing headers to the overview | Tavian Barnes | 2023-05-25 | 1 | -0/+3 | |
| | ||||||
* | fsade: Add missing #include "sanity.h" | Tavian Barnes | 2023-05-25 | 1 | -0/+1 | |
| | ||||||
* | sanity: Add wrappers for sanitizer interfaces | Tavian Barnes | 2023-05-25 | 7 | -36/+110 | |
| | ||||||
* | list: Allow popping from an empty list | Tavian Barnes | 2023-05-24 | 2 | -17/+6 | |
| | ||||||
* | list: Return the removed item from SLIST_POP() | Tavian Barnes | 2023-05-20 | 3 | -12/+19 | |
| | ||||||
* | Switch from assert() to bfs_assert()/bfs_verify() | Tavian Barnes | 2023-05-18 | 12 | -66/+57 | |
| | ||||||
* | diag: New bfs_verify() and bfs_assert() macros | Tavian Barnes | 2023-05-18 | 1 | -0/+22 | |
| | ||||||
* | Use bfs_bug("...") over assert(!"...") | Tavian Barnes | 2023-05-18 | 7 | -14/+15 | |
| | ||||||
* | diag: New bfs_abort() and bfs_bug() macros | Tavian Barnes | 2023-05-18 | 2 | -1/+33 | |
| | ||||||
* | config: Include <stdnoreturn.h> | Tavian Barnes | 2023-05-18 | 1 | -0/+1 | |
| | ||||||
* | bar: Use USHRT_WIDTH | Tavian Barnes | 2023-05-18 | 1 | -2/+2 | |
| | ||||||
* | trie: Use SIZE_WIDTH | Tavian Barnes | 2023-05-18 | 1 | -6/+6 | |
| | ||||||
* | bit: Rename int.h to bit.h | Tavian Barnes | 2023-05-18 | 2 | -4/+4 | |
| | ||||||
* | Use SYS_* instead of __NR_* | Tavian Barnes | 2023-05-16 | 2 | -3/+3 | |
| | ||||||
* | config: Align after saturating in flex_sizeof() | Tavian Barnes | 2023-05-16 | 1 | -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 utilities | Tavian Barnes | 2023-05-16 | 1 | -44/+15 | |
| |