Commit graph

123 commits

Author SHA1 Message Date
Andrea Mazzoleni
a39fb132f8 Normalize comment style
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
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-10-07 09:14:01 +02:00
Andrea Mazzoleni
720073d80d Skip inaccessible disks and parity levels in device operations 2026-09-28 15:34:54 +02:00
Andrea Mazzoleni
316a9cf135 Show N/A for impossible SMART parity configurations 2026-09-28 15:09:55 +02:00
Andrea Mazzoleni
57e15416ae Abort spindown when filesystem flush fails 2026-09-28 15:09:55 +02:00
Andrea Mazzoleni
e481b5f207 Query SMART attributes for all disks in spinup while restricting power operations to array members
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
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-09-23 07:37:30 +02:00
Andrea Mazzoleni
c6951393e8 Exit code and logging invariants for log_fatal and hardware log_error
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
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-09-21 17:27:07 +02:00
Andrea Mazzoleni
929ba5cebe Detect degraded filesystems in device commands and exit with EXIT_DEGRADED 2026-09-19 09:45:47 +02:00
Andrea Mazzoleni
930f0dbbcb Map devices before starting thermal 2026-09-04 08:08:40 +02:00
Andrea Mazzoleni
db34e93936 Check and report shared physical devices across array disks 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
97b13557fe Reset all SMART attribute fields (raw, norm, worst, thresh) to SMART_UNASSIGNED when ignored 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
133e527643 Add support for specifying case-insensitive SMART attribute names in the smartignore option 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
3c3d20601b Avoid some hardcoded string sizes 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
00b4cbafd0 Merge the CLI and Daemon portable interface 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
52f7c2184f Add support for custom smartctl info options using a [info: ...] tag 2026-08-18 23:33:54 +02:00
Andrea Mazzoleni
f40b2decdb Further conversions from 32 to 64 bits 2026-08-18 23:33:54 +02:00
Andrea Mazzoleni
2e71602267 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-08-18 23:33:52 +02:00
Andrea Mazzoleni
54602422dd Change commenting style 2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
96e20b3912 Switch esc_tag and path formatting to a contiguous thread-local circular pool to eliminate stack bloat
Some checks failed
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
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
b32fa703ba Import incomplete attributes from smartctl 2026-05-14 17:02:16 +02:00
Andrea Mazzoleni
4ba6ee874c Log the modification time of the content file in probe and other commmands 2026-04-09 17:56:50 +02:00
Andrea Mazzoleni
0d0431a907 Simpler Copyright string 2026-04-09 17:56:49 +02:00
Christoph Hellwig
60269a1236 Use SPDX (https://spdx.dev/) tags to identify the license used for each
file, and a COPYING file explaining the licensing scheme, with the actual
licenses listed in the LICENSES/ directory.
2026-04-02 16:01:37 +02:00
Andrea Mazzoleni
c153898c9a Log devices mapping
Some checks are pending
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-03-16 12:43:23 +01:00
Andrea Mazzoleni
60c7b6baa3 New extra config option for additional disks to monitor 2026-03-11 16:05:39 +01:00
Andrea Mazzoleni
75ef786e29 Report stats also for low devices
Some checks are pending
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-03-03 12:41:16 +01:00
Andrea Mazzoleni
016d50df34 Fix AFR computation 2026-03-01 11:20:29 +01:00
Andrea Mazzoleni
f86819cadc Do not log the attributes ignore with smartignore 2026-02-19 16:16:30 +01:00
Andrea Mazzoleni
696ee97754 Log full SMART attributes 2026-02-17 02:02:48 +01:00
Andrea Mazzoleni
2019aa4bb6 Log the normalized, worst and threshold value of SMART attributes 2026-02-17 02:02:48 +01:00
Andrea Mazzoleni
d3c5521d21 Log the new temperature attribute for all devices 2026-02-09 14:39:19 +01:00
Andrea Mazzoleni
4a25cdc952 Give time reference for attributes read from disk 2026-02-09 14:39:19 +01:00
Andrea Mazzoleni
4da11411f1 Always get the SMART info after a spinup 2026-02-02 18:00:14 +01:00
Andrea Mazzoleni
d3f7bf64c1 Differentiate messages in the log files if they are caused by an hardware issue 2026-02-01 20:44:36 +01:00
Andrea Mazzoleni
5a5668851d Log the interface of the device
Some checks are pending
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-01-29 17:06:10 +01:00
Andrea Mazzoleni
df0d8f3097 Output SMART attributes in log also for probe 2026-01-26 17:07:36 +01:00
Andrea Mazzoleni
3e62e22411 Beautification with unscrustify 2026-01-26 09:42:03 +01:00
Andrea Mazzoleni
c180015fdc Less confusing names of smartctl flags 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
4aa644c8d9 Simplify failure probability computation 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
ede99cbe80 Added wear level percentage to the SMART report 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
e99f43c8ca Log both protocol and medium errors 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
e80734fc4c Fix typos 2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
524733a6db Make the stat tag a disk level 2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
986d7464b4 Add disk usage detection based on access counters 2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
ea53954b41 Rework attributes 2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
efcdfb9118 When logging device attributes, also provide the split information 2026-01-04 18:01:19 +01:00
Andrea Mazzoleni
1f17ceca84 Log disk information info also in probe
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-12-18 18:49:52 +01:00
Andrea Mazzoleni
d452b109bc More regression tests
Some checks are pending
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
2025-10-28 12:15:50 +01:00