Commit graph

45 commits

Author SHA1 Message Date
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
89b1f47c33 Detect degraded state for Bcachefs and Linux MD RAID arrays 2026-09-20 14:11:35 +02:00
Andrea Mazzoleni
2852b09d47 Detect degraded ZFS pools and missing vdev devices in devdereference_zfs 2026-09-19 21:36:34 +02:00
Andrea Mazzoleni
8e66b42ceb Add trim and trim_empty support to strsplit and update all callers 2026-09-19 21:36:34 +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
0771f91a53 Fix map_end tag formatting by adding trailing colon delimiter 2026-09-18 10:00:42 +02:00
Andrea Mazzoleni
78abc2c7b7 Limit maximum consecutive newlines in uncrustify configuration 2026-09-14 22:33:23 +02:00
Andrea Mazzoleni
c1bcd6a24f Migrate Windows smartctl execution from _wpopen to os_popen and direct process spawning 2026-09-14 18:03:35 +02:00
Andrea Mazzoleni
9c985612ea Make snapshot replacement crash-safe using retiring snapshots 2026-09-08 23:52:08 +02:00
Andrea Mazzoleni
93a64a3710 Emit map_end tag at the end of map list 2026-09-04 08:08:40 +02:00
Andrea Mazzoleni
3288c8cc8c Add machineinfo_struct to query and report system and CPU information in speed test 2026-08-31 10:39:17 +02:00
Andrea Mazzoleni
a4a8e817b4 Cast sig_atomic_t global_interrupt to int in os_signal_interrupt() 2026-08-26 10:49:53 +02:00
Andrea Mazzoleni
78e87549ca Improve directory scan filesystem boundary detection using statx() for mount and subvolume IDs 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
6583897fcf Reserve snapraid- prefix for native ZFS snapshots and introduce fssnapshot_path 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
ebb199de3d Fix snapshot path resolution and aliased paths by storing sub_dir in fssnapshot_struct 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
de7c06a01b Add statfs_type helper to avoid sign-compare warnings on 32-bit platforms 2026-08-21 12:06:26 +02:00
Andrea Mazzoleni
db34e93936 Check and report shared physical devices across array disks 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
175649e236 Fix spinup and spindown failure when skipping non-rotational devices 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
712b54ec98 Reject incomplete VPD page 0x80 instead of clamping page_len 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
8707c588a0 Fix 16-bit big-endian length parsing for SCSI VPD page 0x80 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
180f7edc2f Decode mountinfo octal escapes during Bcachefs device dereferencing 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
39e55d3002 Fix ZFS dataset discovery when mount paths contain spaces 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
7b7a2d5d00 Fail sync if snapshot setup fails on a supported filesystem 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
cd4e06a215 Fix Bcachefs snapshot renaming to use the atomic rename syscall 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
86a9064a68 Add S_ISBLK checks to devdereference_btrfs and devdereference_bcachefs 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
c4d509438f Add devlabel_dev to read volume labels from /dev/disk/by-label 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
f818d9426b Remove libblkid support and build dependency 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
413e46251e Add FS_IOC_GETFSLABEL ioctl support for reading filesystem labels in Linux 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
3a3152a36f Comment about syshex 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6491de0eaa Fail devdereference_zfs and devdereference_bcachefs if stat or S_ISBLK checks fail on any device 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
f518a1ba18 Return error in devdereference_bcachefs if no devices are found 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
8562e4f28e Free devlist allocations on error in devdereference_btrfs 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
c4511e28bc Fallback to rotational in devpower if sysfs attribute is unknown 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
3878c0e2e6 Silence clang static analyzer warnings 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
a7a8ac48c3 Use eaccess instead of access in unixapp.c for consistent effective privilege checking 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6ed860eac3 Abort execution with a fatal error if smartctl options exceed maximum argument limit 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
8fb52b974b Use sig_atomic_t 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
afc643d923 Clarify comment about reading uuids 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
44bce00aef Fail Btrfs device listing if an unexpeced error happens 2026-08-18 23:33:54 +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
d6d1d6d3cd Skip spinup and spindown for non-rotational devices 2026-08-18 23:33:54 +02:00
Andrea Mazzoleni
d7c6a27c6d Refactor portable support 2026-08-18 23:33:54 +02:00