Re: [PATCH v3 07/10] perf: Cleanup for HAVE_SYNC_COMPARE_AND_SWAP_SUPPORT
From: Adrian Hunter
Date: Sat Jul 10 2021 - 08:36:53 EST
On 4/07/21 10:16 am, Leo Yan wrote:
> Since the __sync functions have been dropped, This patch removes unused
> build and checking for HAVE_SYNC_COMPARE_AND_SWAP_SUPPORT in perf tool.
>
> Note, there have a test for SYNC_COMPARE_AND_SWAP and the test file is
> located in build/feature/test-sync-compare-and-swap.c. Since there
> still has several components using the sync functions, it's deliberately
> to not be removed.
I don't quite follow that. If they aren't using the feature test
macro, then why keep the feature test?
>
> $ cd linux/tools
> $ git grep __sync_val_compare_and_swap | awk '{ printf $1"\n" }'
> build/feature/test-sync-compare-and-swap.c:
> include/asm-generic/atomic-gcc.h:
> testing/selftests/bpf/progs/atomics.c:
> testing/selftests/bpf/progs/atomics.c:
> testing/selftests/bpf/progs/atomics.c:
> testing/selftests/bpf/progs/atomics.c:
> testing/selftests/futex/include/atomic.h:
> testing/selftests/futex/include/futextest.h:
>
> Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
> ---
> tools/perf/Makefile.config | 4 ----
> tools/perf/util/auxtrace.c | 5 -----
> 2 files changed, 9 deletions(-)
>
> diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
> index eb8e487ef90b..4a0d9a6defc7 100644
> --- a/tools/perf/Makefile.config
> +++ b/tools/perf/Makefile.config
> @@ -349,10 +349,6 @@ CXXFLAGS += $(INC_FLAGS)
>
> LIBPERF_CFLAGS := $(CORE_CFLAGS) $(EXTRA_CFLAGS)
>
> -ifeq ($(feature-sync-compare-and-swap), 1)
> - CFLAGS += -DHAVE_SYNC_COMPARE_AND_SWAP_SUPPORT
> -endif
> -
> ifeq ($(feature-pthread-attr-setaffinity-np), 1)
> CFLAGS += -DHAVE_PTHREAD_ATTR_SETAFFINITY_NP
> endif
> diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
> index 44bd04dbb6d6..db6255b55c90 100644
> --- a/tools/perf/util/auxtrace.c
> +++ b/tools/perf/util/auxtrace.c
> @@ -130,11 +130,6 @@ int auxtrace_mmap__mmap(struct auxtrace_mmap *mm,
> return 0;
> }
>
> -#if BITS_PER_LONG != 64 && !defined(HAVE_SYNC_COMPARE_AND_SWAP_SUPPORT)
> - pr_err("Cannot use AUX area tracing mmaps\n");
> - return -1;
> -#endif
> -
> pc->aux_offset = mp->offset;
> pc->aux_size = mp->len;
>
>