Andrea Mazzoleni
4a418e158a
Add time stats also for thread scheduling
2016-01-31 18:08:39 +01:00
Andrea Mazzoleni
3040099e48
Optimizes console writes for Windows
2016-01-30 09:17:30 +01:00
Andrea Mazzoleni
6da3469fe7
When clearing the screen move the cursor to the top
2016-01-30 09:17:10 +01:00
Andrea Mazzoleni
bf1f7dda7c
Avoid warnings for printf usage without format
2016-01-28 19:32:31 +01:00
Andrea Mazzoleni
895eb6b36c
Add the new --test-io-stats to show graphs, and reformat them
2016-01-27 22:26:25 +01:00
Andrea Mazzoleni
34d02d4b41
Group print functions
2016-01-27 22:25:02 +01:00
Andrea Mazzoleni
11a8e301f4
Clear the screen before printing stats
2016-01-27 22:24:59 +01:00
Andrea Mazzoleni
252d613eae
Print stats of the number of cached blocks
2016-01-27 20:37:31 +01:00
Andrea Mazzoleni
5f8fd36b45
Use progress values for the usage graph
2016-01-27 18:19:31 +01:00
Andrea Mazzoleni
489613097c
In the usage vector store also the latest measure
...
This reduces the number of past measure by one.
2016-01-26 23:57:30 +01:00
Andrea Mazzoleni
846c02e2c1
Preliminary usage graph
2016-01-26 23:47:59 +01:00
Andrea Mazzoleni
e2c4399e28
More precise disk usage time
...
When we wait, we now count the time for all the waiting disks,
and not only for the first one that finish.
2016-01-20 21:30:00 +01:00
Andrea Mazzoleni
adbf4f25c2
Allow 'smart' without a configuration file
2016-01-18 22:36:06 +01:00
Andrea Mazzoleni
d2991f736c
Function renaming to get better consistency
2016-01-16 14:30:08 +01:00
Andrea Mazzoleni
9ade11483e
Fix some misuses of the MiB and MB units
2016-01-16 07:29:00 +01:00
Andrea Mazzoleni
74fa6e9274
Add the "maybe" function also to par2block
2016-01-15 20:36:20 +01:00
Andrea Mazzoleni
3ea770d19a
Fix a potential division by zero with a malformed content
...
Only when using the -C option. Found with AFL (American Fuzzy Lop).
2016-01-12 23:03:11 +01:00
Andrea Mazzoleni
84c089aae4
Use 'data' in the configuration file instead of 'disk'
2016-01-11 18:54:53 +01:00
Andrea Mazzoleni
d71b1b21b6
Always print the CPU value, even if 0%
...
In dry, it's really 0.
2016-01-09 10:25:56 +01:00
Andrea Mazzoleni
cbf2040b89
Add mutex protection at the filesystem structure
...
In sync we need to modify the filesystem, like to call
fs_deallocate(). We need then proper protection.
This also removes the need of multiple fs_last cached value.
2016-01-09 10:18:14 +01:00
Andrea Mazzoleni
5249f9cb04
Fix various typos in comments
2016-01-02 16:52:20 +01:00
Andrea Mazzoleni
7ad70c26f8
Remove the need of helgrind/drd suppression
...
Using a mutex for protectign the global memory counter
should not affect performance.
2016-01-01 17:57:04 +01:00
Andrea Mazzoleni
b059457190
Disable multi thread for content write
...
It's not necessarely faster, so better to be safe
and avoid possible slowdown.
Also, the original reason of this feature was to detect
potential memory errors, but the original issue triggering this need
was instead not related to it. It was instead the problem to empty links.
2016-01-01 17:56:42 +01:00
Andrea Mazzoleni
354d51725b
Enable again multi write for content files for monothread environments
...
If no thread support is present, keep the old way to write content files.
2016-01-01 17:37:00 +01:00
Andrea Mazzoleni
f4289a9d7e
More explicative rename message
...
Some commands don't have UUID, and cannot detect
the rename.
2015-12-30 22:21:48 +01:00
Andrea Mazzoleni
a8e0214a9a
Clarify the message about text content file not supported
2015-12-29 08:05:32 +01:00
Andrea Mazzoleni
cacc1cb0ce
Autorename disks using UUID for matching
2015-12-28 13:55:22 +01:00
Andrea Mazzoleni
801d01c55b
Store UUIDs in the disk element
2015-12-28 12:09:13 +01:00
Andrea Mazzoleni
c80fd07058
Remove warnings when building with low optimizations
2015-12-20 17:23:58 +01:00
Andrea Mazzoleni
d5c0a8c2f3
Support the case of an empty symlink
...
There is the report of a such condition in Windows.
2015-12-18 19:52:30 +01:00
Andrea Mazzoleni
96501697bb
More os_abort() use after decoding_error()
2015-12-12 18:17:30 +01:00
Andrea Mazzoleni
fcc3894667
Add regression test for UUID change
2015-12-10 22:51:16 +01:00
Andrea Mazzoleni
f71ddbb3fd
Add backtrace support for internal errors
2015-12-04 22:02:31 +01:00
Andrea Mazzoleni
a79052baa6
Add a new --test-no-warnings option
...
It disables annoying warnings that expert user don't
want to see.
2015-11-24 18:49:20 +01:00
Andrea Mazzoleni
b775135175
Fix a build issue when the pthread library is not available
2015-11-19 19:14:15 +01:00
Andrea Mazzoleni
496611f476
Fix an integer overflow when computing the size of a deleted entry
...
This bug prevented SnapRAID to read a valid content file, in case
a deleted entry bigger than 4 GB was present.
This could be reproduced deleting a file bigger than 4 GB and then sync.
2015-11-18 23:14:04 +01:00
Andrea Mazzoleni
3ea6714236
Cleanup resource on thread errors
...
We are going to exit() anyway, but static analyzers
don't known that.
2015-10-31 16:46:15 +01:00
Andrea Mazzoleni
06cbc7d482
Some missing coverage exclusions
2015-10-31 16:29:08 +01:00
Andrea Mazzoleni
8ff39bb9bf
Fix thread operations using thread-safe functions
...
We have a common disk cache, that we cannot share
during multithread operations.
Intead of using a mutex to access the cache, we use a
local thread cache.
2015-10-30 19:06:24 +01:00
Andrea Mazzoleni
fcf7c44197
Use different thread when writing content file
...
This should reduce the possibility that the same
memory error is going to affect all the written
content files in the same way.
2015-10-29 23:37:58 +01:00
Andrea Mazzoleni
204656b129
Verify the CRC of content files after writing them
2015-10-28 22:04:04 +01:00
Andrea Mazzoleni
7e1d9138b5
Add the deplete operation at the data stream
...
It's used to read the content file up to the end to verify its CRC.
2015-10-28 19:36:24 +01:00
Andrea Mazzoleni
4c9da1fa43
Use a more severe error reporting for --force-device
...
We want to be sure that such messages are not ignored.
2015-10-18 23:04:56 +02:00
Andrea Mazzoleni
2b69cfa073
Extend the disk filtering to parity disk
...
You can now fix a specific parity disk,
without touching the others.
2015-10-17 17:36:40 +02:00
Andrea Mazzoleni
3e83b15bbb
Extend --force-device to ignore more erroneous conditions
...
We want to allow fix also if some disk is unaccessible,
and content files not present.
2015-10-16 23:17:38 +02:00
Andrea Mazzoleni
fb759fec84
Rename some shadow variables
...
This removes some warnings in gcc 4.6 version.
2015-10-08 22:33:41 +02:00
Andrea Mazzoleni
452a595067
Adjust verbs in comments
2015-10-07 22:07:20 +02:00
Andrea Mazzoleni
25fe6a252c
Extend filesystem support for deallocation in the middle
...
This could happen in some special cases
2015-10-05 22:48:16 +02:00
Andrea Mazzoleni
b17e618d49
Add an extensive parity filesystem check
...
With the new mapping it's now possible to check everything
in a very fast way.
2015-10-05 21:40:44 +02:00
Andrea Mazzoleni
9bc5f9e5ce
Change the internal mapping to a tree of chunk
...
This is intended to save memory as now we can use a fixed
block of 17 bytes to store the block information, compared
to the previous 28/36 bytes.
2015-10-04 23:17:13 +02:00