Commit graph

631 commits

Author SHA1 Message Date
Allan Clark
5886923bb1 Add bandwidth limit feature --bw-limit 2025-03-29 19:29:55 +01:00
Nasado
3c87474aa2 Use volume UUIDs on macOS 2025-02-13 11:21:26 +01:00
Andrea Mazzoleni
93f424768b Remove unused variable 2024-06-05 10:14:50 +02:00
Tomas Uribe
79e8794ff5 Small doc updates, clarify references to "snapraid touch". (#19)
Co-authored-by: Andrea Mazzoleni <amadvance@gmail.com>
2024-01-10 14:17:00 +01:00
Andrea Mazzoleni
85ca997bf2 Fix integer overflow when computing the progress percentage 2024-01-03 20:20:39 +01:00
Andrea Mazzoleni
a605442c8c Fix typos in messages 2023-12-09 15:35:45 +01:00
saladpanda
978d812153
Fix error when configuring a contentfile in / (#18)
When using this config line:
content /snapraid.content
SnapRAID throws this error:
Error accessing 'content' dir '' specification in '/etc/snapraid.conf' at line 17

This commit fixes that by not replacing the rightmost slash with NUL but
instead the char immediately after the slash.
2023-10-20 10:24:54 +02:00
Andrea Mazzoleni
0d6792d4ed Clearify a scrub message 2022-12-05 12:13:40 +01:00
Andrea Mazzoleni
3ab8b43907 Fix build errors with new mingw compiler 2022-07-21 15:24:21 +02:00
Andrea Gelmini
2dacb15516 Fix typos
Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2022-07-21 14:48:48 +02:00
Andrea Mazzoleni
2fe1f46752 Support file time before 1970 2022-02-18 07:11:46 +01:00
Andrea Mazzoleni
eb19c79039 Increase default disk cache to 16 MiB 2022-01-09 17:46:10 +01:00
Andrea Mazzoleni
02d170c004 Remove all scan buffers from the stack
This reduces even more the stack utilization.
2022-01-09 10:23:09 +01:00
Andrea Mazzoleni
b9721747c5 Reduce stack allocation in dir scanning
This allow to work in environments with low stack size, like MUSL that has only 128K.
2022-01-09 09:06:18 +01:00
Andrea Mazzoleni
96cff859ce Remove unnecessary #if 2022-01-07 21:53:12 +01:00
Andrea Mazzoleni
1d4fbd3f9a Add the option --test-skip-multi-scan to skip multithreads scan 2022-01-07 21:03:51 +01:00
Andrea Mazzoleni
bc2d8ee6a5 Use proper locking when printing diff lines in Windows
Windows requires a lock to avoid to mixup lines.
2021-12-01 18:00:07 +01:00
Andrea Mazzoleni
2c3f9b8364 Remove outdated comment 2021-11-29 17:42:52 +01:00
Andrea Mazzoleni
31699b1b2c Print only one Verifying message
There is no point to print them all at the same time.
2021-11-29 17:40:40 +01:00
Andrea Mazzoleni
b0f85b54b1 Remove warning when built without thread support 2021-11-29 17:31:52 +01:00
Andrea Mazzoleni
3478a95add Print time for scanning 2021-11-29 16:51:11 +01:00
Andrea Mazzoleni
f31395dffb Add support for parallel disk scanning 2021-11-28 16:20:00 +01:00
Andrea Mazzoleni
836fd6b1e0 Add a new undocumented --filter-block-error option 2021-07-08 08:07:03 +02:00
Andrea Mazzoleni
24f746bf82 Use localtime_r() when available
No effect on the monothread context, but avoid warnings from static analysis.
2021-05-30 15:52:55 +02:00
Andrea Mazzoleni
4653dde7c5 Fixed false positive warnings from static analysis
The number of buffer and the hash size are always a small number. It never reash the 4 GB limit.
2021-05-30 15:50:13 +02:00
Andrea Mazzoleni
53801b407a Remove the need of the MingW pthread layer on the Windows port
Now everything is implemented usign Windows native calls.
2021-05-26 00:21:52 +02:00
Andrea Mazzoleni
7ce88e5f18 Remove unncessary assignment 2021-05-25 13:32:26 +02:00
Andrea Mazzoleni
ec7c4de3c9 Fix check for division by 0 2021-05-24 19:47:05 +02:00
Andrea Mazzoleni
b609df78b5 Add overflow checking on the interger parsing 2021-05-24 19:43:53 +02:00
Andrea Mazzoleni
7654ed45f1 In fix/check with the -e option process the whole files with bad blocks 2021-05-22 22:28:19 +02:00
Andrea Mazzoleni
d5d10abcda Do not postprocess files in excluded blocks
The filtering is by files, so the last block is included.
The only exception is with an explicit end block, but in such case,
like when fixing bad blocks the post processing is not expected.
2021-05-22 22:00:07 +02:00
Andrea Mazzoleni
2a5b5499c4 Avoid to recompute the block status multiple times
Store it in a bit vector and reuse the result.
2021-05-22 11:37:36 +02:00
Andrea Mazzoleni
f0a5268d32 Avoid to use the filesystem mutex when it's not necessary
This speed-up a bit the check and fix that are monothreads
2021-05-22 10:14:56 +02:00
Andrea Mazzoleni
ff3fc0a194 Avoid to get the info block if not necessary 2021-05-22 10:14:56 +02:00
Andrea Mazzoleni
dd29375af1 Avoid to compose the file path if not necessary 2021-05-22 10:14:56 +02:00
Andrea Mazzoleni
cb8b3dc804 Print a new Selecting... stage to get an idea of the time spent on it 2021-05-22 10:14:53 +02:00
Andrea Mazzoleni
b74731d853 Use stripe as more correct definition 2021-05-22 08:50:30 +02:00
Andrea Gelmini
986e9b4131 Fix typos 2020-05-26 12:50:15 +02:00
Andrea Gelmini
f3b3182885 Fix variable name 2020-05-26 12:50:15 +02:00
Andrea Mazzoleni
5bac3d64a6 Fix build errors due new gcc 10 default for -fno-common 2020-05-18 15:28:55 +02:00
Andrea Mazzoleni
a8242e4cd8 Print block stats 2020-04-24 21:02:47 +02:00
Andrea Mazzoleni
290801fd2f More explicative on bad blocks 2020-04-24 21:02:47 +02:00
Andrea Mazzoleni
b725333a49 Add MetroHash128 for speed measurement 2020-04-24 21:02:45 +02:00
Andrea Mazzoleni
f0e7170009 Print the time needed for state verification 2019-11-16 08:41:43 +01:00
Andrea Mazzoleni
9a21995a61 Split the parity close and truncate operations
To avoid any possible conflicts.
2019-06-04 19:28:43 +02:00
Andrea Mazzoleni
91671274bc Don't fix the size of filtered out parities 2019-05-19 16:46:03 +02:00
Andrea Mazzoleni
a873eee208 Improve parity fixing speed 2019-05-19 10:04:53 +02:00
Andrea Mazzoleni
19c75877f1 Allow the --force-device option to work with smart/up/down/devices 2019-05-05 09:17:05 +02:00
Andrea Mazzoleni
37b0064d60 Remove a build warning about major/minor defined in sysmacros.h
The new glibc 2.26 shows a warning if the code uses major/minor
from sys/types.h. Unfortunalte the autoconf macro used do not trigger
sysmacros.h inclusion because major/minor are already defined in sys/types.h.
2018-11-12 21:27:34 +01:00
Andrea Mazzoleni
70f2460130 Fix some warnings with latest gcc 8.2.0 2018-09-26 06:50:43 +02:00