summaryrefslogtreecommitdiffstats
path: root/src/ioq.c
Commit message (Expand)AuthorAgeFilesLines
* prelude: Split bfs-specific utilities into new bfs.h headerTavian Barnes2024-08-281-0/+3
* diag: Get rid of bfs_static_assert()Tavian Barnes2024-08-281-2/+1
* prelude: Simplify attributesTavian Barnes2024-07-281-2/+2
* ioq: Do more in the branch-free slot helperTavian Barnes2024-06-201-11/+11
* configure: Use --with/--without for librariesTavian Barnes2024-05-241-13/+13
* ioq: Fix uninitialized values in ioq_create() cleanup pathTavian Barnes2024-04-241-4/+1
* Rename config.h to prelude.hTavian Barnes2024-04-191-1/+1
* ioq: Fix some allocation failure pathsTavian Barnes2024-03-201-2/+4
* Re-run include-what-you-useTavian Barnes2024-03-111-2/+3
* ioq: Copy ring_ops from the previous threadTavian Barnes2024-03-061-1/+4
* ioq: Probe for supported io_uring operationsTavian Barnes2024-02-281-18/+67
* ioq: Remove some branches from ioq_slot_{push,pop}()Tavian Barnes2024-02-181-12/+21
* ioq: Ensure ioq_ent is sufficiently alignedTavian Barnes2024-02-161-1/+1
* ioq: Add batched ioqq_push/pop operationsTavian Barnes2024-02-151-49/+127
* ioq: Don't push immediately in ioq_check_cancel()Tavian Barnes2024-02-151-10/+6
* ioq: Add a missing close() if bfs_opendir() failsTavian Barnes2024-02-151-0/+2
* ioq: Don't use the symbolic IO_WQ_[UN]BOUND indicesTavian Barnes2024-02-141-2/+2
* ioq: Factor out io_uring initializationTavian Barnes2024-02-141-37/+73
* ioq: Make -j also limit the io_uring worker threadsTavian Barnes2024-02-141-0/+9
* ioq: Replay IOQ_STOP messages rather than spam themTavian Barnes2024-02-141-4/+5
* ioq: Get rid of IOQ_STRIDETavian Barnes2024-02-121-20/+5
* ioq: Shrink the io_uringsTavian Barnes2024-02-121-4/+2
* ioq: Implement ioq_stat()Tavian Barnes2024-01-181-10/+90
* ioq: Refactor to take advantage of -WswitchTavian Barnes2024-01-181-71/+91
* ioq: Use the negative errno conventionTavian Barnes2024-01-131-21/+11
* config: New variadic attr(...) macroTavian Barnes2023-12-181-2/+2
* ioq: Don't crash on allocation failuresTavian Barnes2023-11-151-0/+4
* config: New attr_noinline and attr_cold macrosTavian Barnes2023-11-091-0/+2
* ioq: Implement a better non-blocking popTavian Barnes2023-11-091-90/+186
* dir: Add a flags parameter to bfs_opendir()Tavian Barnes2023-10-171-3/+4
* ioq: Use io_uringTavian Barnes2023-10-021-37/+270
* Formatting fixesTavian Barnes2023-09-271-1/+1
* ioq: New ioq_slot_monitor() helperTavian Barnes2023-08-231-4/+8
* ioq: Try harder to avoid setting IOQ_BLOCKEDTavian Barnes2023-07-121-6/+16
* ioq: Separate slot and queue operationsTavian Barnes2023-07-111-49/+75
* ioq: Implement async close() and closedir()Tavian Barnes2023-07-101-72/+103
* ioq: New ioq_capacity() functionTavian Barnes2023-07-061-2/+7
* ioq: Don't write to an empty slot in ioqq_trypop()Tavian Barnes2023-07-041-6/+10
* thread: Wrap more pthread APIsTavian Barnes2023-06-261-6/+3
* ioq: New ioq_cancel() functionTavian Barnes2023-06-261-7/+20
* ioq: Don't check NDEBUG manually in ioqq_trypop()Tavian Barnes2023-06-261-5/+2
* dir: Arena-allocate directoriesTavian Barnes2023-06-201-5/+10
* ioq: Arena-allocate ioq_cmdTavian Barnes2023-06-201-3/+8
* alloc: New header for memory allocation utilitiesTavian Barnes2023-06-201-18/+8
* ioq: Implement a non-blocking fast pathTavian Barnes2023-06-151-98/+107
* ioq: Use a circular bufferTavian Barnes2023-06-151-78/+201
* dir: New bfs_polldir() function for directory readaheadTavian Barnes2023-06-131-0/+4
* dir: Add a flag to bfs_freedir() to force the fd to stay the sameTavian Barnes2023-06-121-0/+1
* ioq: Implement an async I/O queueTavian Barnes2023-06-121-0/+284