diff options
| author | Dag-Erling Smørgrav <des@FreeBSD.org> | 2026-05-03 15:35:15 +0000 |
|---|---|---|
| committer | Dag-Erling Smørgrav <des@FreeBSD.org> | 2026-05-03 15:35:15 +0000 |
| commit | 0733afdb4dad58cfe7ad7f5994e26bf148d78199 (patch) | |
| tree | 9bcef474d92b28e2749b824e11def4b8ec8ebb86 | |
| parent | d90513ea85693da0ca5955173609f4e81e38ae16 (diff) | |
lockf: Test that lockf does not spin on fd
PR: 294832
MFC after: 1 week
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D56723
| -rw-r--r-- | usr.bin/lockf/tests/lockf_test.sh | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/usr.bin/lockf/tests/lockf_test.sh b/usr.bin/lockf/tests/lockf_test.sh index 823b5673a176..16ee5a03bb9e 100644 --- a/usr.bin/lockf/tests/lockf_test.sh +++ b/usr.bin/lockf/tests/lockf_test.sh @@ -177,6 +177,23 @@ fdlock_body() atf_check test "$status2" -eq 0 } +atf_test_case fdlockspin +fdlockspin_head() +{ + atf_set "descr" "Don't spin when locking a file descriptor" +} +fdlockspin_body() +{ + # Start background locker and give it time to get settled + lockf foo sleep 2 & sleep 1 + # Start foreground locker in fdlock mode + atf_check ktrace -tc lockf -t 3 0 <foo + # Background locker quit and foreground locker succeeded + atf_check -o save:trace kdump -tc + # Check how many times foreground locker called flock() + atf_check -o inline:"2\n" egrep -c 'CALL +flock' trace +} + atf_test_case keep keep_body() { @@ -334,6 +351,7 @@ atf_init_test_cases() atf_add_test_case basic atf_add_test_case bubble_error atf_add_test_case fdlock + atf_add_test_case fdlockspin atf_add_test_case keep atf_add_test_case needfile atf_add_test_case termchild |
