6f99194049
htop has had separate read/write sort modes since 2.0; v1.22 conflated them via io_total_kb(). v1.24 splits SortMode::Io into three variants so operators can find read-heavy (DB servers) vs write-heavy (log shippers) processes. - New variants: SortMode::IoRead, SortMode::IoWrite - Cycle updated: Rss -> Cpu -> Io -> IoRead -> IoWrite -> Pid -> Name -> Rss - name() returns 'IO', 'IO-R', 'IO-W' for disambiguation (shown in status flash on 'o' keypress) - Extracted sort_by_io_field() helper: shared 4-arm comparator for (Some, Some) descending, (Some, None) Less, (None, Some) Greater, (None, None) Equal. Eliminates the DRY violation of repeating the 4-arm match in three places. - Sentinel semantics preserved: None still sorts below Some; column still renders em-dash for unreadable /proc/[pid]/io - Column header unchanged: 'IO' column shows per-process total; sort direction is in the status line. Minimal change; adding separate R/W columns would push the panel past 100 chars and lose comm truncation. Test count 83 -> 87: - sort_by_io_read_ignores_writes - sort_by_io_write_ignores_reads - sort_by_io_read_pushes_missing_to_bottom - sort_by_io_write_pushes_missing_to_bottom - io_name_is_io now also locks IO-R and IO-W strings - sort_cycle and sort_cycle_includes_io updated for new cycle Redox stripped binary: 4,119,400 bytes (-8 KiB from v1.23; the helper dedup actually shrunk the binary). Compile warnings: 55 (unchanged; all new variants are used). Docs: local/docs/redbear-power-improvement-plan.md \xC2\xA748