Commit graph

2342 commits

Author SHA1 Message Date
Andrea Mazzoleni
b0b913d3f4 Fix typo in monothread implementation 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
fcfd1eeae8 Fix leak on error in state_write 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
4bac0a9ed2 Fix leak on error in argutf8 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
da1ab93342 Avoid floating point underflow in thermal computation 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
4f6c2cdd07 Introduce nalloc_nofail 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
7dcf5a822f Fix strtrim to correctly trim strings containing only whitespace 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
028bb83f4f Prevent integer wrap-around when checking string length in sgetbs 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
2fbfbc1eae Sanitize addr2line binary path via strspn whitelist before system call 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
9098e1c4fd Sync the OS interface with the daemon 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
b3a1a1838f Run PowerShell commands safely via base64 encoded strings 2026-08-10 11:23:14 +02:00
Andrea Mazzoleni
f453cde09e Pass element count instead of byte count to WCHAR buffer bounds 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
c2b25413c3 Synchronize child_process updates using interlocked Win32 APIs 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
fe6776a156 Avoid 100% CPU utlization in thread_yield 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
a9624a99b4 Document why thread_yield is used 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
dfef6a363e Abort on privilege switch failures unless errno is EPERM 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
4eb988cf59 Allocate minimum 1 byte in malloc_nofail when size is 0 to prevent process abort 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
24a9cf71a0 Use sig_atomic_t 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
2ff2d7b03c Clarify comment about reading uuids 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
b2e0d7f5b7 Align data disk UUID validation and write logic with parity splits using content_uuid 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
2990d9e6e1 Optimize redundant devuuid() calls by storing content file UUIDs in a dedicated field 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
b1b62ce629 Update TODO 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
48d2df5b86 Fix translation inconsistencies 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
608b96c1ab Add support for specifying case-insensitive SMART attribute names in the smartignore option 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
2f6c2399a8 Avoid some hardcoded string sizes 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
f19d00c93e Merge the CLI and Daemon portable interface 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
6a559ae0ee Avoid a folding VLA warning in clang 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
167cb70807 Fix translation inconsistencies 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
5991504787 Add Translation section to manual translations 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
7a3f06a5b8 New target make doc 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
4b615e9833 Localize section headers and update content commands in translations 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
f47970543b Update manual description of content file commands to include all available options 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
3b9e94f69b Fail Btrfs device listing if an unexpeced error happens 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
6f0347a120 Fix file descriptor leak in os_spawn by enabling O_CLOEXEC for compiled binaries 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
0b1ea5bb4c Add support for custom smartctl info options using a [info: ...] tag 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
7398c8228e Skip spinup and spindown for non-rotational devices 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
f114cbdf30 Refactor portable support 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
aedb657712 Allow tools to be symlinks and hardlinks 2026-08-10 11:23:13 +02:00
Andrea Mazzoleni
a7b4ad2640 Rename randomize to os_randomize 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
49cf8b85b3 Use uniform ending on files for parity implementation 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
47034ceeec Fix building on x86 for missing AVX512 support 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
c24dd0f26f Update translations 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
27d496ecbe More CPU info 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
d5e91476cb Add CRC support for macOS 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
6f6acc0b23 In the speed test, set the CPU affinity to the expected best core 2026-08-10 11:23:12 +02:00
Andrea Mazzoleni
7127ec3135 Run the speed test with and without displacement 2026-08-04 09:48:00 +02:00
Andrea Mazzoleni
58e92fa3c8 Allow to specify the wrap size in allocation 2026-08-04 09:48:00 +02:00
Andrea Mazzoleni
8904c27ce2 Refactor and reorganize parity generation functions using inline templates 2026-08-04 09:48:00 +02:00
Andrea Mazzoleni
f76fcf7ab1 Add AArch64 NEON parity generation and recovery functions 2026-08-04 09:48:00 +02:00
Andrea Mazzoleni
d9c6b7989e Use vpternlogq in raid_gen3-6_avx512bw to fuse sequential vpxorq instructions into single 3-way XORs 2026-08-04 09:48:00 +02:00
Andrea Mazzoleni
43e0104101 Gate AVX-512BW gen1/gen2 behind slow_avx512() to avoid double-pumped shuffle penalties 2026-08-04 09:48:00 +02:00