From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Aditya Gupta <adityag@linux.ibm.com>
Cc: Jiri Olsa <jolsa@kernel.org>, Ian Rogers <irogers@google.com>,
Namhyung Kim <namhyung@kernel.org>,
linux-perf-users@vger.kernel.org, maddy@linux.ibm.com,
atrajeev@linux.vnet.ibm.com, kjain@linux.ibm.com,
disgoel@linux.vnet.ibm.com
Subject: Re: [PATCH v14 3/7] perf version: Update --build-options to use 'supported_features' array
Date: Wed, 4 Sep 2024 10:05:24 -0300 [thread overview]
Message-ID: <ZthbFDYPX3Opb8Ij@x1> (raw)
In-Reply-To: <20240904061836.55873-4-adityag@linux.ibm.com>
On Wed, Sep 04, 2024 at 11:48:32AM +0530, Aditya Gupta wrote:
> Now that the feature list has been duplicated in a global
> 'supported_features' array, use that array instead of manually checking
> status of built-in features.
>
> This helps in being consistent with commands such as 'perf check feature',
> so commands can use the same array, and any new feature can be added at
> one place, in the 'supported_features' array
So I tested and applied the first two patches, but it is failing for
this 3rd, please rebase from what is in the tmp.perf-tools-next branch
at:
https://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next.git
- Arnaldo
> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
> Cc: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
> Cc: Disha Goel <disgoel@linux.vnet.ibm.com>
> Cc: Jiri Olsa <jolsa@kernel.org>
> Cc: Ian Rogers <irogers@google.com>
> Cc: Kajol Jain <kjain@linux.ibm.com>
> Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Acked-by: Namhyung Kim <namhyung@kernel.org>
> Reviewed-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
> Signed-off-by: Aditya Gupta <adityag@linux.ibm.com>
> ---
> tools/perf/builtin-version.c | 43 +++++++-----------------------------
> 1 file changed, 8 insertions(+), 35 deletions(-)
>
> diff --git a/tools/perf/builtin-version.c b/tools/perf/builtin-version.c
> index 398aa53e9e2e..e149d96c6dc5 100644
> --- a/tools/perf/builtin-version.c
> +++ b/tools/perf/builtin-version.c
> @@ -46,45 +46,18 @@ static void status_print(const char *name, const char *macro,
> printf(" # %s\n", macro);
> }
>
> -#define STATUS(__d, __m) \
> -do { \
> - if (IS_BUILTIN(__d)) \
> - status_print(#__m, #__d, "on"); \
> - else \
> - status_print(#__m, #__d, "OFF"); \
> +#define STATUS(feature) \
> +do { \
> + if (feature.is_builtin) \
> + status_print(feature.name, feature.macro, "on"); \
> + else \
> + status_print(feature.name, feature.macro, "OFF"); \
> } while (0)
>
> static void library_status(void)
> {
> - STATUS(HAVE_DWARF_SUPPORT, dwarf);
> - STATUS(HAVE_DWARF_GETLOCATIONS_SUPPORT, dwarf_getlocations);
> -#ifndef HAVE_SYSCALL_TABLE_SUPPORT
> - STATUS(HAVE_LIBAUDIT_SUPPORT, libaudit);
> -#endif
> - STATUS(HAVE_SYSCALL_TABLE_SUPPORT, syscall_table);
> - STATUS(HAVE_LIBBFD_SUPPORT, libbfd);
> - STATUS(HAVE_DEBUGINFOD_SUPPORT, debuginfod);
> - STATUS(HAVE_LIBELF_SUPPORT, libelf);
> - STATUS(HAVE_LIBNUMA_SUPPORT, libnuma);
> - STATUS(HAVE_LIBNUMA_SUPPORT, numa_num_possible_cpus);
> - STATUS(HAVE_LIBPERL_SUPPORT, libperl);
> - STATUS(HAVE_LIBPYTHON_SUPPORT, libpython);
> - STATUS(HAVE_SLANG_SUPPORT, libslang);
> - STATUS(HAVE_LIBCRYPTO_SUPPORT, libcrypto);
> - STATUS(HAVE_LIBUNWIND_SUPPORT, libunwind);
> - STATUS(HAVE_DWARF_SUPPORT, libdw-dwarf-unwind);
> - STATUS(HAVE_LIBCAPSTONE_SUPPORT, libcapstone);
> - STATUS(HAVE_ZLIB_SUPPORT, zlib);
> - STATUS(HAVE_LZMA_SUPPORT, lzma);
> - STATUS(HAVE_AUXTRACE_SUPPORT, get_cpuid);
> - STATUS(HAVE_LIBBPF_SUPPORT, bpf);
> - STATUS(HAVE_AIO_SUPPORT, aio);
> - STATUS(HAVE_ZSTD_SUPPORT, zstd);
> - STATUS(HAVE_LIBPFM, libpfm4);
> - STATUS(HAVE_LIBTRACEEVENT, libtraceevent);
> - STATUS(HAVE_BPF_SKEL, bpf_skeletons);
> - STATUS(HAVE_DWARF_UNWIND_SUPPORT, dwarf-unwind-support);
> - STATUS(HAVE_CSTRACE_SUPPORT, libopencsd);
> + for (int i = 0; supported_features[i].name; ++i)
> + STATUS(supported_features[i]);
> }
>
> int cmd_version(int argc, const char **argv)
> --
> 2.46.0
next prev parent reply other threads:[~2024-09-04 13:05 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-04 6:18 [PATCH v14 0/7] Introduce perf check subcommand Aditya Gupta
2024-09-04 6:18 ` [PATCH v14 1/7] tools/lib/subcmd: Don't free the usage string Aditya Gupta
2024-09-04 6:18 ` [PATCH v14 2/7] perf check: Introduce 'check' subcommand Aditya Gupta
2024-09-04 6:18 ` [PATCH v14 3/7] perf version: Update --build-options to use 'supported_features' array Aditya Gupta
2024-09-04 13:05 ` Arnaldo Carvalho de Melo [this message]
2024-09-04 19:06 ` Aditya Gupta
2024-09-04 19:15 ` Arnaldo Carvalho de Melo
2024-09-04 6:18 ` [PATCH v14 4/7] tools/perf/tests: Update test_task_analyzer.sh to use perf check feature Aditya Gupta
2024-09-04 6:18 ` [PATCH v14 5/7] tools/perf/tests: Update probe_vfs_getname.sh script " Aditya Gupta
2024-09-04 6:18 ` [PATCH v14 6/7] perf: Fix inconsistencies in feature names Aditya Gupta
2024-09-04 6:18 ` [PATCH v14 7/7] perf: Add more features to supported_features list Aditya Gupta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZthbFDYPX3Opb8Ij@x1 \
--to=acme@kernel.org \
--cc=adityag@linux.ibm.com \
--cc=atrajeev@linux.vnet.ibm.com \
--cc=disgoel@linux.vnet.ibm.com \
--cc=irogers@google.com \
--cc=jolsa@kernel.org \
--cc=kjain@linux.ibm.com \
--cc=linux-perf-users@vger.kernel.org \
--cc=maddy@linux.ibm.com \
--cc=namhyung@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).