Avatar for the uutils user
uutils
coreutils
BlogDocsChangelog

timeout: Fix performance regression using sigtimedwait

#9173
Comparing
quantum-encoding:fix-timeout-performance
(
d7c9ee8
) with
main
(
a0a797d
)
CodSpeed Performance Gauge
0%
Untouched
281
Ignored
1
Skipped
38

Benchmarks

320 total
sort_key_field[500000]
src/uu/sort/benches/sort_bench.rs
CodSpeed Performance Gauge
-2%
51.8 MB53 MB
dd_copy_default
src/uu/dd/benches/dd_bench.rs
CodSpeed Performance Gauge
-2%
126 KB128.7 KB
cp_recursive_deep_tree[(120, 4)]
src/uu/cp/benches/cp_bench.rs
CodSpeed Performance Gauge
-2%
721.7 KB735.5 KB
cp_large_file[16]
src/uu/cp/benches/cp_bench.rs
CodSpeed Performance Gauge
+2%
117.6 KB115.8 KB
sort_long_line[160000]
src/uu/sort/benches/sort_bench.rs
CodSpeed Performance Gauge
+2%
982.3 KB967 KB
du_summarize_balanced_tree[(5, 4, 10)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
+1%
607.9 KB599.3 KB
du_deep_tree[(100, 3)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
+1%
1.4 ms1.3 ms
rm_recursive_tree
src/uu/rm/benches/rm_bench.rs
CodSpeed Performance Gauge
-1%
11.7 ms11.8 ms
du_max_depth_balanced_tree[(6, 4, 10)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
-1%
2.1 MB2.1 MB
cksum_crc32b
src/uu/cksum/benches/cksum_bench.rs
CodSpeed Performance Gauge
+1%
13.3 ms13.2 ms
du_max_depth_balanced_tree[(6, 4, 10)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
-1%
32.5 ms32.7 ms
du_all_wide_tree[(5000, 500)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
-1%
1.3 MB1.3 MB
sort_numeric[500000]
src/uu/sort/benches/sort_bench.rs
CodSpeed Performance Gauge
+1%
79.2 MB78.7 MB
cp_preserve_metadata[(5, 4, 10)]
src/uu/cp/benches/cp_bench.rs
CodSpeed Performance Gauge
+1%
1.7 MB1.7 MB
dd_copy_8k_blocks
src/uu/dd/benches/dd_bench.rs
CodSpeed Performance Gauge
+1%
1 ms1 ms
du_summarize_balanced_tree[(5, 4, 10)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
-1%
8.4 ms8.4 ms
sort_reverse_locale[500000]
src/uu/sort/benches/sort_bench.rs
CodSpeed Performance Gauge
0%
352.3 ms353.9 ms
du_all_wide_tree[(5000, 500)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
0%
19.4 ms19.3 ms
dd_copy_4k_blocks
src/uu/dd/benches/dd_bench.rs
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
dd_copy_with_skip
src/uu/dd/benches/dd_bench.rs
CodSpeed Performance Gauge
0%
2.2 ms2.2 ms
du_wide_tree[(5000, 500)]
src/uu/du/benches/du_bench.rs
CodSpeed Performance Gauge
0%
1.2 MB1.2 MB
ls_recursive_long_all_mixed_tree
src/uu/ls/benches/ls_bench.rs
CodSpeed Performance Gauge
0%
2.8 ms2.8 ms
ls_recursive_long_all_deep_tree[(100, 4)]
src/uu/ls/benches/ls_bench.rs
CodSpeed Performance Gauge
0%
3.2 ms3.2 ms
ls_recursive_long_all_balanced_tree[(6, 4, 15)]
src/uu/ls/benches/ls_bench.rs
CodSpeed Performance Gauge
0%
130.5 ms130.1 ms
file_custom_format
src/uu/date/benches/date_bench.rs
CodSpeed Performance Gauge
0%
13.2 ms13.2 ms

Commits

Click on a commit to change the comparison range
Base
main
a0a797d
0%
timeout: Replace 100ms polling with signal waiting. Linux/FreeBSD: sigtimedwait(). macOS: kqueue with EVFILT_SIGNAL. Fixed signal mask inheritance for child processes. Handle overflow for extremely large timeout values
d7c9ee8
7 months ago
by quantum-encoding
© 2026 CodSpeed Technology
Home Terms Privacy Docs