mergerfs/vendored/libfuse/include
Antonio S. Musumeci 7ce5364c35 thread_pool: extract _try_claim_removal to deduplicate CAS loop
_process_func contained two identical compare_exchange_weak loops for
claiming a _remove_count decrement — one in the poison-pill handler
and one after task completion.  Duplicating the loop risks the two
copies diverging during future edits and makes the function harder
to follow.

Extract the loop into _try_claim_removal() which returns true when a
decrement is successfully claimed.  Both call sites now delegate to
the shared helper.  The relaxed memory ordering rationale (the
subsequent _remove_self acquires _threads_mutex, providing the
happens-before with the scaling-side increment) is documented on the
helper.  No functional change.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 18:46:48 -04:00
..
moodycamel Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
base_types.h Add support for FUSE_COPY_FILE_RANGE_64 2026-04-01 23:20:05 -05:00
bounded_queue.hpp Fix semaphore drift from enqueue_unbounded in BoundedQueue 2026-04-09 20:21:36 -04:00
debug.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
extern_c.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fatal.hpp Use fatal::abort() rather than assert in places 2026-03-24 21:13:34 -04:00
fs_dirent64.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse.h Rework open file resource management 2026-03-31 19:53:17 -04:00
fuse_attr.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_cfg.hpp Add FUSE request_timeout 2026-04-01 23:20:05 -05:00
fuse_common.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_conn_info.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_dirent.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_direntplus.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_dirents.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_entry.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_kernel.h Add support for FUSE_COPY_FILE_RANGE_64 2026-04-01 23:20:05 -05:00
fuse_lowlevel.h Add support for FUSE_COPY_FILE_RANGE_64 2026-04-01 23:20:05 -05:00
fuse_msgbuf.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_msgbuf_t.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_opt.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_pollhandle.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_req.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_req_ctx.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
fuse_timeouts.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
invocable.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
kvec.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
maintenance_thread.hpp Move maintainence thread func take u64 rather than int 2026-03-24 21:13:34 -04:00
mutex.hpp Replace two-statement mutex_lockguard macro with single RAII declaration 2026-04-09 21:42:24 -04:00
mutex_debug.hpp Replace two-statement mutex_lockguard macro with single RAII declaration 2026-04-09 21:42:24 -04:00
mutex_ndebug.hpp Replace two-statement mutex_lockguard macro with single RAII declaration 2026-04-09 21:42:24 -04:00
objpool.hpp fix objpool: add size tracking, improve allocation matching; fix msgbuf: clear pool on size change 2026-03-24 21:13:34 -04:00
stat_utils.h Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
syslog.hpp Move 3rd party libraries to "vendored" directory 2026-03-02 01:09:16 -05:00
thread_pool.hpp thread_pool: extract _try_claim_removal to deduplicate CAS loop 2026-04-10 18:46:48 -04:00