Commit graph

2469 commits

Author SHA1 Message Date
Andrea Mazzoleni
993a03a70e Update AGENTS.md 2026-08-18 10:37:35 +02:00
Andrea Mazzoleni
4523ddd63f Update AGENTS.md 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
bdbd90080e Fix import fetch fallback across matching hash candidates 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
9c4ef64a53 Add regression test for modified hardlink scan recovery 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
bfcc71bb88 Document scan phase invariants 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
e4b5f52853 Fix modified hardlink inode tracking during scan 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
93106eb146 Prevent partial fix from finalizing incomplete files 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
d873a0f12d Keep unrecoverable files quarantined until fix completion 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
19b7dba214 Clarify CHG block handling during interrupted sync recovery 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
3893bd2845 Quiesce read-ahead before thermal spin-down 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
bff90ac5cd Detect truncated parity using the contiguous valid physical prefix 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
d8f9b77cdc Fix parity writer error propagation in io_flush and abort sync on parity write failures 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
b844dd69f2 Add missing esc_tag() in status and parity split log tags 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
3f63bd69fa Fix io_flush_thread() to wait for in-flight writer tasks before returning 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
bf3647f355 Set stream state to EOF in sfill when reaching stream size limit 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
f492b73028 Fix sopen_write call signature in HAVE_MT_WRITE block by adding stream flags 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
df1ef3bd17 Enforce content file CRC as terminal by rejecting trailing data and terminating parse loop 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
8f6e726259 Check and report shared physical devices across array disks 2026-08-18 10:09:45 +02:00
Andrea Mazzoleni
ad165dfb67 Add SMHasher3 adapters and validation results for SnapRAID hash functions 2026-08-17 16:50:42 +02:00
Andrea Mazzoleni
dab502293d Propagate smartctl info options in Windows devtree and thermal monitoring 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
d5b9756744 Fix spinup and spindown failure when skipping non-rotational devices 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
762d9d6d7b Handle short read and pread operations in import and search paths 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
3ab2511110 Fix undefined behavior in STREAM buffer bounds checking by avoiding out-of-bounds pointer arithmetic 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
6bbd9c7a6c Fix undefined behavior in extent file comparison by casting pointers to uintptr_t 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
5151d59208 Fix undefined _linux macro typo to __linux__ 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
abea8c56d9 Remove unused MetroHash implementation and references 2026-08-17 15:39:39 +02:00
Andrea Mazzoleni
afd04d3023 Redirect uncaptured stdio streams to NUL in os_spawn on Windows 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
2c5390ecf1 Harden PowerShell execution with safe SearchPathW and os_spawn 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
0669f03754 Remove legacy in-place mtime_nsec migration in multithread scanner 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
7d2e57efc5 Add buffer bounds check before appending wildcard in windows_opendir_find 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
423ccdd5f5 Convert extended UNC paths to standard UNC format in windows_realpath 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
536f542a56 Normalize negative pre-1970 FILETIME timestamps via windows_time2stat 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
eca321263a Accumulate ReadCount and WriteCount into 64-bit count in devstat 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
a0832ce9f6 Fix PrintNameOffset WCHAR index scaling and add bounds validation in windows_readlink 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
e6f1b96215 Handle short writes and EINTR in sflush, handle_write, and parity_write 2026-08-17 10:19:38 +02:00
Andrea Mazzoleni
bf9684cfae Reject incomplete VPD page 0x80 instead of clamping page_len 2026-08-16 15:51:26 +02:00
Andrea Mazzoleni
50d1389623 Fix 16-bit big-endian length parsing for SCSI VPD page 0x80 2026-08-16 15:43:34 +02:00
Andrea Mazzoleni
463d858faf Move user and group resolution before fork for async-signal safety
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-08-16 09:49:40 +02:00
Andrea Mazzoleni
48b7190777 Update AGENTS.md 2026-08-14 11:48:22 +02:00
Andrea Mazzoleni
7345eac57e Track read-only handle fallback to report accurate write permission errors instead of EBADF 2026-08-14 11:45:51 +02:00
Andrea Mazzoleni
9a08258249 Serialize bandwidth rate limiter sleep inside mutex to eliminate parallel worker stall waves 2026-08-14 11:45:51 +02:00
Andrea Mazzoleni
daaa205acf Forward configuration file options to spindown on error 2026-08-14 11:45:51 +02:00
Andrea Mazzoleni
9f2034ea09 Improve error message when content files are damaged or truncated 2026-08-14 11:10:18 +02:00
Andrea Mazzoleni
00ccfd0586 Remove stale snapshot link if renaming device link fails on Windows 2026-08-14 10:47:07 +02:00
Andrea Mazzoleni
890d08c6dc Use monotonic clock in os_tick_ms and os_tick_sec on POSIX systems 2026-08-14 10:40:54 +02:00
Andrea Mazzoleni
9052594054 Use unsigned char for character range comparisons in match_class 2026-08-14 10:39:07 +02:00
Andrea Mazzoleni
91d38da966 Decode mountinfo octal escapes during Bcachefs device dereferencing
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-08-14 09:54:28 +02:00
Andrea Mazzoleni
b80a4f865d Fix ZFS dataset discovery when mount paths contain spaces 2026-08-14 09:51:50 +02:00
Andrea Mazzoleni
3e71e68848 Exclude snapshot directory only when snapshot mode is enabled 2026-08-14 09:47:12 +02:00
Andrea Mazzoleni
a8a94bb950 Add os_usleep with bounded sleep loop returning on signal interruption and use it in bandwidth limiter 2026-08-14 09:39:36 +02:00