Commit graph

2560 commits

Author SHA1 Message Date
Andrea Mazzoleni
6a69a09cc7 Add condition comments to else and endif directives in Makefile.am 2026-08-26 11:10:38 +02:00
Andrea Mazzoleni
de809dda5e Add SHORTCHECK variable to Makefile to control test dataset size 2026-08-26 11:08:00 +02:00
Andrea Mazzoleni
a4a8e817b4 Cast sig_atomic_t global_interrupt to int in os_signal_interrupt() 2026-08-26 10:49:53 +02:00
Andrea Mazzoleni
21ca93f8c1 Explicitly cast sig_atomic_t child_pid to pid_t for kill() 2026-08-26 10:47:19 +02:00
Andrea Mazzoleni
64271ac429 Add FreeBSD build and test job using freebsd-vm action 2026-08-26 10:44:01 +02:00
Andrea Mazzoleni
8396d3aaa1 Clarify cross-generation lookup limitation and safety in import_dealloc during rehash 2026-08-26 10:23:42 +02:00
Andrea Mazzoleni
f25fbd0c1b Do not flag AMD CPUs as having slow AVX-512 in raid_cpu_has_slow_avx512 2026-08-26 10:11:44 +02:00
Andrea Mazzoleni
26956bfa71 Document known issues in manual 2026-08-26 10:03:18 +02:00
Andrea Mazzoleni
1123b3eca0 Fix deallocated import candidate handling with stat validation and fallback 2026-08-26 09:39:24 +02:00
Andrea Mazzoleni
78e87549ca Improve directory scan filesystem boundary detection using statx() for mount and subvolume IDs 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
0416366e2d Handle trailing-slash paths in Windows lstat using handle-based states starting 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
4f286a2faa Document fs_allocate behavior, performance rationale, and invariant checks 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
30f78a4190 Fix fs_check validation omission on the final file in fs_file extent tree 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
6583897fcf Reserve snapraid- prefix for native ZFS snapshots and introduce fssnapshot_path 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
0e2d31d9db Document symlink target stability requirements for configured data directories 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
ebb199de3d Fix snapshot path resolution and aliased paths by storing sub_dir in fssnapshot_struct 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
abcdd688dd Improve snapshot fallback warning messages to inform users of reduced recovery capability if files changed since the last sync 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
31fc380609 Document risk of file modifications during interrupted sync in snapshots lifecycle
Some checks are pending
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
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-08-25 12:51:26 +02:00
Andrea Mazzoleni
b60979f293 Add raid_selftest() checks for all RAID modes in the test command 2026-08-25 12:13:21 +02:00
Andrea Mazzoleni
9bd2f68046 Add and standardize top comments across SIMD assembly functions 2026-08-25 12:09:03 +02:00
Andrea Mazzoleni
3759c9356b Optimize gen2 and gen3 kernels for AVX-512 GFNI with coefficient preloading 2026-08-25 11:24:43 +02:00
Andrea Mazzoleni
76ed8d643a Rename static test helpers in module.c to selftest_* 2026-08-25 11:03:36 +02:00
Andrea Mazzoleni
697ab3056e Extend selftest and fulltest with disk edge cases, polynomial checks, and comments 2026-08-25 10:59:33 +02:00
Andrea Mazzoleni
f85c014c1c Extend raid_selftest with comprehensive recovery combinations for raid_rec 2026-08-25 10:45:46 +02:00
Andrea Mazzoleni
c192fe8982 Add compiler memory barriers to NEON and NEON32 end helpers 2026-08-25 09:58:53 +02:00
Andrea Mazzoleni
fd65dbd9ea Fix undefined behavior by making TommyDS foreach callback signatures take void*
Some checks are pending
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
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-08-24 23:03:00 +02:00
Andrea Mazzoleni
7250521e66 Clarify fulltest scope and test_count limits in raid README 2026-08-24 22:16:52 +02:00
Andrea Mazzoleni
e43bdda22b Return -1 in raid_check and raid_scan when block size is 0 2026-08-24 22:11:52 +02:00
Andrea Mazzoleni
46a09a380a Check maximum basic CPUID leaf before querying leaf 7 in AVX probing 2026-08-24 22:06:17 +02:00
Andrea Mazzoleni
5ed6a29db2 Document memory helpers, freeing semantics, and design invariants 2026-08-24 22:01:40 +02:00
Andrea Mazzoleni
b9974b7873 Include missing raid docs, mktables, and invtestx in EXTRA_DIST 2026-08-24 21:53:08 +02:00
Andrea Mazzoleni
306f847689 Reset global zero buffer with raid_zero(0) in raid_selftest cleanup 2026-08-24 21:53:08 +02:00
Andrea Mazzoleni
eba07d2173 Include <stddef.h> in raid.h to make the public header self-contained 2026-08-24 21:53:08 +02:00
Andrea Mazzoleni
453fb20d83 Avoid UB in raid_gen memcpy when output aliases input with nd == 1 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
88442cb10c Avoid writing to healthy parities in raid_rec() using local vector remapping 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
c1a78092c4 Fix RAID documentation accuracy 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
03d82a71f4 Document raid_selftest startup execution and mode selection requirements 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
df4667ffd5 Add NOTES 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
0ebe2e1e5e Add OTHERS 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
3f4d7e15fa Reduce SSSE3ext REC1 unrolling from 64 to 32 bytes for better performance 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
048d0c14b1 Make TEST_COUNT and TEST_SIZE parametric in raid fulltest and test Makefile 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
4d97df38ce Optimize recovery with P by deriving the final missing block via XOR 2026-08-24 21:53:07 +02:00
Andrea Mazzoleni
d3e67b2fdf Extract common recovery function setup 2026-08-24 17:39:29 +02:00
Andrea Mazzoleni
e74b03a062 Remove unused argument from recovery functions 2026-08-24 17:39:29 +02:00
Andrea Mazzoleni
46ebce4e3c Add specialized P+Q REC2OF2 recovery to all SIMD backends 2026-08-24 17:39:29 +02:00
Andrea Mazzoleni
d4184b9aee Harden public RAID API argument validation 2026-08-24 17:39:29 +02:00
Andrea Mazzoleni
ae703ce68c Optimize multi-parity recovery with fused syndrome generation 2026-08-24 11:57:04 +02:00
Andrea Mazzoleni
9d842b0dfb Precompute direct Cauchy affine matrices for RAID GFNI generation 2026-08-23 21:57:16 +02:00
Andrea Mazzoleni
0c030c024e Remove horner evaluation for RAID GFNI parity generation 2026-08-23 21:34:41 +02:00
Andrea Mazzoleni
63c81dedf3 Clarify AES GFNI performance expectations and document RAID affine multiplication behavior 2026-08-23 20:29:02 +02:00