Revision history for Data-Sync-Shared
0.10 2026-09-26
- A create that fails at mmap no longer leaves a full-size file
behind.
- Checking a file left by an interrupted create no longer allocates
its pages on tmpfs.
- Error messages no longer lose their reason to a long path.
0.09 2026-09-15
- Recover a lock left ownerless by a corrupt file instead of hanging.
- Fix an RWLock writer stall on ARM64 after readers release.
0.08 2026-08-12
- A file left by an interrupted create is recovered, not refused.
- Hardening against tied and overloaded arguments.
- unlink() reports a failed removal; a missing file is no error.
0.07 2026-07-22
- A guard inherited by a forked child no longer releases the
parent's RWLock, Condvar or Semaphore at exit.
- On-disk format change (v2 -> v3): recreate 0.06 files.
- acquire_n above the maximum croaks instead of blocking forever.
0.06 2026-07-03
- Security and robustness hardening; backing files now created mode
0600 (pass a file-mode argument to new() for cross-user sharing).
0.05 2026-05-26
- RWLock dead-reader recovery: SIGKILL'd reader no longer pins the
counter; 1024-slot per-process mirror drains dead contributions on
wrlock timeout
- SYNC_VERSION 1 -> 2 (RWLock files only); existing maps must be recreated
0.04 2026-04-26
- RWLock write-preferring + writers waiting split
- Barrier broken-on-timeout + is broken()
- sync() croaks; harden DESTROY
- sync sem drain: CAS-loop -> atomic exchange
- idempotent eventfd; aarch64 CI matrix
0.03 2026-04-13
- Add SEE ALSO cross-links to all family modules
0.02 2026-04-12
- Fix eventfd_set self-assignment fd guard
- Add SEE ALSO cross-links to family modules
0.01 2026-04-11
- Initial release: futex-based Semaphore, Barrier, RWLock, Condvar and
Once in shared memory.
- File-backed, anonymous and memfd modes; PID-based stale recovery;
eventfd integration.
- Scope guards, and timeouts on all blocking operations.
Keyboard Shortcuts
Global
s
Focus search bar
?
Bring up this help dialog
GitHub
gp
Go to pull requests
gi
Go to GitHub issues (only if GitHub is preferred repository)