Andrea Mazzoleni
275063d23c
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-08-18 23:33:52 +02:00
Andrea Mazzoleni
54602422dd
Change commenting style
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
1227a8c45e
Sync no longer requires clearing the past hash
...
It no longer assumes past hashes are valid if even a single unsynced
block exists, which indicates a previous sync was interrupted.
While this makes syncing slower after an interruption, it preserves the
past hash in the content file, enabling a more reliable fix if a
disk fails following an incomplete sync.
This ensures the --import option remains functional even after an
interrupted sync.
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
03a8927571
Add detection of AVX2GFNI
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
25e8436534
Integrate new AVX512 functions in the speed test
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
2fc38017a8
Add Btrfs snapshot support for atomic sync and recovery consistency
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
fcf85b4b7c
New Btrfs support using IOCTLs to get UUID and low level devices
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
c88f7697b3
Get the UUID from the imported file or directory
2026-08-18 23:33:52 +02:00
Christoph Hellwig
cf515b82b2
Make all RAID forwarders static and local using a new registration interface
...
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
4016f0974a
Drop the test-run option from the official binary
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
6e2e11d9b1
Log using log_error all errors that are not resulting in an early termination
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
3f70a21efe
Reduce permission to avoid to spin up disks in Windows
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
a73e970b50
Fix undefined _linux macro typo to __linux__
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-08-18 23:33:06 +02:00
Andrea Mazzoleni
ea37d5a38b
More informational error level messages
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-08-04 09:46:55 +02:00
Andrea Mazzoleni
af0b3c8451
Add a new informational error level for messages
2026-08-04 09:46:55 +02:00
Andrea Mazzoleni
b7dcf8659e
Enable lock file support on Windows using CreateFileW with exclusive share mode
2026-08-04 09:46:55 +02:00
Andrea Mazzoleni
3f280486bd
Fix regression with both touch and threshold active at the same time
2026-07-19 17:55:29 +02:00
Andrea Mazzoleni
f1889de305
Update to MuseAir v2
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-07-14 10:40:58 +02:00
Andrea Mazzoleni
0814463777
Add MuseAir analysis
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-07-13 15:13:04 +02:00
Andrea Mazzoleni
99a5a78570
Extend MuseAirLoong to support any input length by buffering inputs under 32 bytes
2026-07-13 11:03:13 +02:00
Andrea Mazzoleni
1093ba9bbb
Abort saving content file if rehash blocks exist with undefined previous checksum
2026-07-13 11:02:33 +02:00
Andrea Mazzoleni
a144fdc721
Update to MuseAir v1
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-07-11 16:55:19 +02:00
Andrea Mazzoleni
c8cb392a89
Move task ring list mutation under io_mutex for code hygiene, no bug
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-07-06 17:01:34 +02:00
Andrea Mazzoleni
952ea337e7
Protect candidate file copy under stamp_lock during multithread scan
2026-07-06 17:01:34 +02:00
Andrea Mazzoleni
e088672ccd
Fix false file modification report after threshold-aborted sync
2026-07-06 15:34:22 +02:00
Andrea Mazzoleni
bbadcf252f
Reduce permission to avoid to spin up disks in Windows
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-06-23 11:47:31 +02:00
Andrea Mazzoleni
65ad555779
Fix smartctl retry of probe with -d sat in Windows avoiding to spin up disks
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-06-15 11:51:02 +02:00
Andrea Mazzoleni
c837a9ace0
Log more information in assertion failure
2026-06-15 11:16:19 +02:00
Andrea Mazzoleni
bf2657b76a
Avoid saving the content file in touch if nothing changed
2026-06-10 14:49:47 +02:00
Andrea Mazzoleni
e4aa186b1a
Fix touching of files that in Windows have the read-only attribute set
2026-06-10 10:41:11 +02:00
Andrea Mazzoleni
5cfebba19e
Remove unnecessary log argument
2026-06-03 20:57:08 +02:00
Andrea Mazzoleni
cc99a22929
Add protection for block position integer overflow
2026-06-03 19:07:31 +02:00
Andrea Mazzoleni
c814b474be
Remove the misleading Flush message in nix
2026-06-03 18:24:18 +02:00
Andrea Mazzoleni
447b1fd067
Fix overflow in the TERA/TEBI definition
2026-06-03 18:24:18 +02:00
Andrea Mazzoleni
6e59f2ca7b
Print the stop message also with the GUI
2026-06-03 12:33:29 +02:00
Andrea Mazzoleni
cf452a091d
Log using log_error all errors that are not resulting in an early termination
2026-06-03 12:33:29 +02:00
Andrea Mazzoleni
96e20b3912
Switch esc_tag and path formatting to a contiguous thread-local circular pool to eliminate stack bloat
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-05-29 11:22:04 +02:00
Andrea Mazzoleni
aee71ad2d6
Fix default period of the speed test
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-05-27 14:52:41 +02:00
Andrea Mazzoleni
bfaa60890b
Avoid calling close(-1) on incomplete stream
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-05-24 21:32:37 +02:00
Andrea Mazzoleni
212a0ce6d1
Avoid to use log_fatal() for a not fatal condition
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
19b0b14b2e
Assume GetTickCount64() always available
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
b1534fc21f
Avoid a nul period in the speed test
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
5a664a4100
Avoid the limitation of 255 disks for the IO subsystem
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
d2edddea0a
More clear device test
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
23b4cc5fa0
Make the devices commands to fail if unsupported in the platform
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
ee5c7ebf13
Verify smartignore range
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
4c8aa12ab1
Comment about extends shrinking directly in the tree
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
492ad40f2c
Simpler handling of skip_sync
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
c2969f11ba
Give a reasonable value to blockcur in case of alert failure
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
81995ccc8d
Use eaccess() instead of access()
2026-05-21 16:08:03 +02:00