Commit graph

2409 commits

Author SHA1 Message Date
Andrea Mazzoleni
3d23853de7 Log explicit warning when missing snapshots fall back to live filesystem 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
7b7a2d5d00 Fail sync if snapshot setup fails on a supported filesystem 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
3f0c194a2f Fix snapshot commit failure propagation to ensure sync exits with error 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
661e539f45 Defer pending snapshot promotion until parity sync 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
bb1a08e950 Remove curl fallback from packaging scripts and require local tarball 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
cd4e06a215 Fix Bcachefs snapshot renaming to use the atomic rename syscall 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
170759e83c Use direct Linux setresuid/setresgid syscalls for thread-local privilege switching 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
6b3b60bf87 Add O_CLOEXEC flag to open /dev/null in os_command and os_daemonize 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
03831386f0 Fix os_wait return type mismatch in UNIX implementation 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
1c3f695d5a Isolate child process group with setpgid to prevent double signal delivery 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
4defb748e8 Document why invalid GUID validation in fssnapshot_create returns immediately without WMI cleanup 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
e44fb81da2 Modernize configure.ac 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
c66ea18715 Fix Makefile target name from btrfscheck to snapcheck in makecov.sh 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
eebb3943e5 Protect rate limiter state updates with a mutex to prevent data races 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
b4a694bb10 Align Windows rotational device detection fallback with Unix by assuming rotational when unknown 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
3e4f79180e Fix potential division by zero in nalloc_nofail when size is zero 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
dac999e693 Fix non-POSIX test equality operator in configure.ac for shell compatibility 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
74a62a8d82 Change the speed report link 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
5434a900ce Update HISTORY 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
86a9064a68 Add S_ISBLK checks to devdereference_btrfs and devdereference_bcachefs 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
84297fc6dc Replace malloc with alloca in fork child exec path for async-signal safety 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
19173754ec Comment explaining why CLOSE_RANGE_CLOEXEC is safe for fexecve binaries in os_spawn 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
c4d509438f Add devlabel_dev to read volume labels from /dev/disk/by-label 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
f818d9426b Remove libblkid support and build dependency 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
413e46251e Add FS_IOC_GETFSLABEL ioctl support for reading filesystem labels in Linux 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
97b13557fe Reset all SMART attribute fields (raw, norm, worst, thresh) to SMART_UNASSIGNED when ignored 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
3a3152a36f Comment about syshex 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
2b71f5727e Guard lower close_range call with fd > 3 in os_exec_script 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6491de0eaa Fail devdereference_zfs and devdereference_bcachefs if stat or S_ISBLK checks fail on any device 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
f518a1ba18 Return error in devdereference_bcachefs if no devices are found 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
8562e4f28e Free devlist allocations on error in devdereference_btrfs 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
c4511e28bc Fallback to rotational in devpower if sysfs attribute is unknown 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
f3c3265116 Document dummy register clobbers in raid_sse_end and raid_neon_end 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
acdf29ac09 Replace VLA envp_dynamic with malloc in fork child exec path 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6c85573d12 Add comments explaining Windows Service console attachment flow in os_term 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
f67bf49c91 Comment about process resource in os_term/os_kill on Windows 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
b3fdc8d6a5 Add fallback to kill(pid, sig) when process group signaling returns ESRCH in os_term and os_kill 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6b46e08a1f Configure PR_SET_PDEATHSIG on Linux and Job Objects on Windows to prevent orphaned subprocesses on program crash 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
0ca7c65049 Support filesystems with invalid inode numbers on individual files 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
3878c0e2e6 Silence clang static analyzer warnings 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
76124cff00 Add bounded retry with exponential backoff for ERROR_NO_SYSTEM_RESOURCES 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
05884d7aa0 Fix binary varint decoders to reject values overflowing uint32_t/uint64_t declared widths 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
02413b756c Validate the product/model returned by the Windows driver 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
c79f82bc99 Update to the new RAID library 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
47b321d97c Support dynamic runtime selection of RAID AES mode 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
1b1ae7cce9 Add new os_kill 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
e191127b0d Add CREATE_NO_WINDOW flag to process creation in os_spawn 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
7afed76f06 Create symlinks to host binaries on Wine targets to run test commands natively 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
9a2ea26a62 Fix build in different directory 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
4ebdfe8c8f Defer deallocation of modified files to phase 2 to prevent copy-detection races 2026-08-18 23:33:56 +02:00