Commit graph

2264 commits

Author SHA1 Message Date
Andrea Mazzoleni
826cbe70bc New displacement benchmarks 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
d15da0172a Simplify GFNI implementations 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
d4a3ea54ff Always build RAID test with USE_RAID_AES 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
0c1580767e Assume the assembler supports all x86 SSE/AVX instructions 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
affb3790ab Extend the RAID regression test to detect unset parity 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
d8beca84c5 Add support for AVX2 GFNI 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
96005850dd Disable AVX512 on CPUs with narrow shuffle ports or double-pumped 256-bit datapath 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
b5d5234847 Revise the RAID library Makefile 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
0753bedb30 Be more clear when GFNI is really used 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
2865662b2c Optimize AVX512 gen1 parity with the vpternlogq instruction 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
9e8c17cae1 Update TODO 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
f45420df7b Extend io_init() to support arbitrary combinations of data and parity operations 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
e6214cec1d Do not expose Windows threads keys 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
1dac98bcc1 Validate GUIDs before passing them to PowerShell 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
0922827651 Take into account that btrfs devices can be not contiguous 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
9a84c0390f Portability 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
53d10db9fd Add tables for the AES Polynomial 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
951e0cae3f Update TODO 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
4c72fb4b49 Secure the popen use 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
2f5ffc3e90 Add new build option to allow symlinks 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
dccba9fd8c Delete snapshot links in Windows 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
f8724cb8bb Report issues in github 2026-06-10 15:28:54 +02:00
Andrea Mazzoleni
0a5ec9cff6 Update documentation about snapshots 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
d6db8355ef Comment about the RAID optimizations 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
d4a3179d44 Use a simpler approach in the new AVX512 generation functions 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
a8210b3350 Automatically exclude the snapshot .snapraid directory and content files 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
9eca9623b3 Preliminary support for AVX512GFNI 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
ebd9ece35c Allow to configure path of external tools 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
c5e48ea558 Secure external tools execution 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
f63963e72e Add Windows VirtualShadowCopy support for snapshots 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
63d76e177d Add Windows support for symlink of directories 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
8431f4ba65 In Windows readlink now convert \ to / to match symlink behaviour 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
d10da126d0 Always use PATH_MAX instead of MAX_PATH (limited to 260) 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
ecfcd48f88 Revise manpage pattern section 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
538aec2021 Sanitize shell execution 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
fc81e3509f Add ZFS support 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
000a1a1a46 Rework snapshot interface 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
1057e66843 Add Bcachefs support 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
28121dbf17 Change the BLOCK_HASH_SIZE type to avoid potential overflow 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
9f17fd3828 Target Windows 7 instead of Windows Vista 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
be74644823 Modernize configure.ac 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
22c33a5ba7 More coverage support 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
b847603ea6 Update manpage 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
a76dcffdde Update TODO 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
b96cae90a2 Add regression check for Btrfs
It requires root privileges as it has to create Btrfs filesystems.
2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
cbb4ac831a Remove the requirement to snapshot content files
The new content file format now includes metadata for previous versions
of files. This allows the fix command to access historical file data from
snapshots as needed, ensuring recovery even if the live filesystem has
changed or the file was deleted during a sync.
2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
786804ba41 Track deallocated files in the content file for parity recovery
Add a new 'dealloc' list per disk to record files that were removed
or modified during a scan. This list is saved in the content file
(new format version SNAPCNT4) so that past parity contributions of
those files can be imported from previous snapshots.
2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
1c416ddb52 Change commenting style 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
5956ecbbd1 Change commenting style 2026-06-10 15:28:53 +02:00
Andrea Mazzoleni
78c4dd6585 Avoid duplicate steps in the build servers 2026-06-10 15:28:53 +02:00