Andrea Mazzoleni
|
a6a1cec115
|
Resolve ZFS dataset mounts through mountinfo, including legacy mountpoints
|
2026-09-25 22:51:55 +02:00 |
|
Andrea Mazzoleni
|
1aa6d2b787
|
Reject content files with parity split sizes not aligned to the configured block size
|
2026-09-25 17:19:40 +02:00 |
|
Andrea Mazzoleni
|
5b0a8e0c8e
|
Restore file mtime after synced-only recovery writes
|
2026-09-25 10:48:56 +02:00 |
|
Andrea Mazzoleni
|
46dbfa9b08
|
Reject parity disk filters combined with file selection filters
|
2026-09-25 10:22:07 +02:00 |
|
Andrea Mazzoleni
|
7662b80023
|
Keep automatic array search within data-disk filesystem boundaries
|
2026-09-25 10:14:36 +02:00 |
|
Andrea Mazzoleni
|
ce7d29f178
|
Keep hardlink target files selected with selected hardlinks
|
2026-09-25 10:08:57 +02:00 |
|
Andrea Mazzoleni
|
13267085d1
|
Fail closed on invalid .snapraidignore control files
|
2026-09-25 09:44:09 +02:00 |
|
Andrea Mazzoleni
|
099f3c7429
|
Use DT_* values directly for scan entry types
|
2026-09-25 09:44:09 +02:00 |
|
Andrea Mazzoleni
|
a92b19d9c2
|
Use lstat for empty objects and leave type mismatches unrecoverable
|
2026-09-25 08:48:43 +02:00 |
|
Andrea Mazzoleni
|
69967b1262
|
Exclude blockless objects from filter-error selection
|
2026-09-25 08:24:50 +02:00 |
|
Andrea Mazzoleni
|
190efbefb2
|
Make search candidate I/O failures nonfatal during recovery
|
2026-09-25 08:24:50 +02:00 |
|
Andrea Mazzoleni
|
5f68fda7ae
|
Propagate non-capacity errors during parity split growth
|
2026-09-24 21:52:42 +02:00 |
|
Andrea Mazzoleni
|
bcc06e10c6
|
Reject parity sizes exceeding data_off_t range and remove redundant block size casts
|
2026-09-24 20:40:27 +02:00 |
|
Andrea Mazzoleni
|
149b408c38
|
Skip disk cache statistics for mapping holes
|
2026-09-24 19:49:46 +02:00 |
|
Andrea Mazzoleni
|
bcfd2734b6
|
Quiesce scrub read-ahead before autosave and distinguish read/write barriers
|
2026-09-24 19:49:46 +02:00 |
|
Andrea Mazzoleni
|
fba3f74538
|
Handle MinGW path conversion failures with ENAMETOOLONG and EILSEQ instead of aborting
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-24 12:57:17 +02:00 |
|
Andrea Mazzoleni
|
222136f1e7
|
Leave block empty for unlocalized close errors and use zero for parity open errors
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-23 16:37:13 +02:00 |
|
Andrea Mazzoleni
|
1a5b28ad38
|
Mark scrub/sync blocks bad when data file open fails with an I/O error
|
2026-09-23 16:24:00 +02:00 |
|
Andrea Mazzoleni
|
e481b5f207
|
Query SMART attributes for all disks in spinup while restricting power operations to array members
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-23 07:37:30 +02:00 |
|
Andrea Mazzoleni
|
5b615a0e02
|
Emit content_data and content_parity tags only after durable content rename in state_write
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-22 09:25:08 +02:00 |
|
Andrea Mazzoleni
|
c6951393e8
|
Exit code and logging invariants for log_fatal and hardware log_error
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-21 17:27:07 +02:00 |
|
Andrea Mazzoleni
|
c2d46f4039
|
Emit content tags only after updating disk mapping and checks
|
2026-09-20 14:11:35 +02:00 |
|
Andrea Mazzoleni
|
89b1f47c33
|
Detect degraded state for Bcachefs and Linux MD RAID arrays
|
2026-09-20 14:11:35 +02:00 |
|
Andrea Mazzoleni
|
2852b09d47
|
Detect degraded ZFS pools and missing vdev devices in devdereference_zfs
|
2026-09-19 21:36:34 +02:00 |
|
Andrea Mazzoleni
|
8e66b42ceb
|
Add trim and trim_empty support to strsplit and update all callers
|
2026-09-19 21:36:34 +02:00 |
|
Andrea Mazzoleni
|
929ba5cebe
|
Detect degraded filesystems in device commands and exit with EXIT_DEGRADED
|
2026-09-19 09:45:47 +02:00 |
|
Andrea Mazzoleni
|
2a4335ef7d
|
Defer content_info logging and state counters update after content durability rename in state_write
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-18 10:00:42 +02:00 |
|
Andrea Mazzoleni
|
601064dde7
|
Use pathcmp for disk name comparisons to enforce case-insensitive uniqueness on Windows
|
2026-09-18 10:00:42 +02:00 |
|
Andrea Mazzoleni
|
ecb12ee92c
|
Avoid duplicate fatal stderr output in GUI mode
|
2026-09-18 10:00:42 +02:00 |
|
Andrea Mazzoleni
|
0771f91a53
|
Fix map_end tag formatting by adding trailing colon delimiter
|
2026-09-18 10:00:42 +02:00 |
|
Andrea Mazzoleni
|
3f3e7d4483
|
Validate logical disk names in configuration parsing to ensure compatibility with snapraid-daemon
|
2026-09-18 10:00:41 +02:00 |
|
Andrea Mazzoleni
|
bdc2da9a94
|
Report elapsed time when loading and saving state
|
2026-09-18 10:00:41 +02:00 |
|
Andrea Mazzoleni
|
d92d296bcd
|
Lock unsafe command-line options after enabling --lock-options
|
2026-09-18 10:00:41 +02:00 |
|
Andrea Mazzoleni
|
8b9858ffdc
|
Synchronizes log entries for errors
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-15 23:55:21 +02:00 |
|
Andrea Mazzoleni
|
215aed17e7
|
Emit content read metadata only after successful content loading
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-arm32 (push) Has been cancelled
Build / build-win (push) Has been cancelled
Build / build-freebsd (push) Has been cancelled
Build / build-musl (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
|
2026-09-14 23:26:54 +02:00 |
|
Andrea Mazzoleni
|
78abc2c7b7
|
Limit maximum consecutive newlines in uncrustify configuration
|
2026-09-14 22:33:23 +02:00 |
|
Andrea Mazzoleni
|
c1bcd6a24f
|
Migrate Windows smartctl execution from _wpopen to os_popen and direct process spawning
|
2026-09-14 18:03:35 +02:00 |
|
Andrea Mazzoleni
|
9f48c87dd4
|
Encapsulate race-safe process slot synchronization and termination in OS layer for Unix and Windows
|
2026-09-14 15:00:20 +02:00 |
|
Andrea Mazzoleni
|
08863cd740
|
Print progress message after saving content files when multithreading is disabled
|
2026-09-13 21:15:37 +02:00 |
|
Andrea Mazzoleni
|
33340f1ede
|
Replace mem_is_zero() with membcmp() and update call sites
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-09-11 09:27:42 +02:00 |
|
Andrea Mazzoleni
|
2f47d407ba
|
Strengthen stream and vector memory tests
|
2026-09-11 09:27:42 +02:00 |
|
Andrea Mazzoleni
|
15048ff14f
|
Optimize hardware CRC32C using multiple lanes
|
2026-09-11 09:27:42 +02:00 |
|
Andrea Mazzoleni
|
787fc020e6
|
Process content info values in contiguous runs
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
badff9d548
|
Skip unsynced block counting for synchronized content
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
902c19b668
|
Specialize block hash copies for the full hash size
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
b64c28b537
|
Serialize deleted blocks by ordered parity extents
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
6b5b0098c7
|
Detect rebuild blocks during state preparation
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
31f44958a3
|
Avoid redundant unsynced block scans when writing content
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
1073c97e0a
|
Skip extent locking during single-threaded content serialization
|
2026-09-10 23:51:30 +02:00 |
|
Andrea Mazzoleni
|
03545f1685
|
Resolve file-to-parity mappings once per extent while writing content
|
2026-09-10 23:51:30 +02:00 |
|