Skip to content

Commit 67ee526

Browse files
committed
selftests: harness: Remove dependency on libatomic
__sync_bool_compare_and_swap() is deprecated and requires libatomic on GCC. Compiler toolchains don't necessarily have libatomic available, so avoid this requirement by using atomics that don't need libatomic. Signed-off-by: Thomas Weißschuh <[email protected]> Reviewed-by: Muhammad Usama Anjum <[email protected]> Acked-by: Shuah Khan <[email protected]> Link: https://lore.kernel.org/r/20250505-nolibc-kselftest-harness-v4-6-ee4dd5257135@linutronix.de Signed-off-by: Thomas Weißschuh <[email protected]>
1 parent 5cccec7 commit 67ee526

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

tools/testing/selftests/kselftest_harness.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -439,12 +439,12 @@
439439
} \
440440
if (child == 0) { \
441441
if (_metadata->setup_completed && !fixture_name##_teardown_parent && \
442-
__sync_bool_compare_and_swap(teardown, false, true)) \
442+
!__atomic_test_and_set(teardown, __ATOMIC_RELAXED)) \
443443
fixture_name##_teardown(_metadata, self, variant->data); \
444444
_exit(0); \
445445
} \
446446
if (_metadata->setup_completed && fixture_name##_teardown_parent && \
447-
__sync_bool_compare_and_swap(teardown, false, true)) \
447+
!__atomic_test_and_set(teardown, __ATOMIC_RELAXED)) \
448448
fixture_name##_teardown(_metadata, self, variant->data); \
449449
munmap(teardown, sizeof(*teardown)); \
450450
if (self && fixture_name##_teardown_parent) \

0 commit comments

Comments
 (0)