* [PATCH 1/1] perf beauty: Fix dependency of tables using uapi/linux/mount.h @ 2024-03-11 20:54 Arnaldo Carvalho de Melo 2024-03-11 21:27 ` [PATCH 1/1] perf beauty: Move uapi/linux/fs.h copy out of the directory used to build perf Arnaldo Carvalho de Melo 0 siblings, 1 reply; 4+ messages in thread From: Arnaldo Carvalho de Melo @ 2024-03-11 20:54 UTC (permalink / raw) To: Ian Rogers Cc: Jiri Olsa, Adrian Hunter, Namhyung Kim, Linux Kernel Mailing List Several such tables were depending on uapi/linux/fs.h, cut and paste error when they were introduced, fix it. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Ian Rogers <irogers@google.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> --- tools/perf/Makefile.perf | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index 04d89d2ed209b4dc..d3a568abc38919e8 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -499,19 +499,19 @@ $(fadvise_advice_array): $(linux_uapi_dir)/in.h $(fadvise_advice_tbl) fsmount_arrays := $(beauty_outdir)/fsmount_arrays.c fsmount_tbls := $(srctree)/tools/perf/trace/beauty/fsmount.sh -$(fsmount_arrays): $(linux_uapi_dir)/fs.h $(fsmount_tbls) +$(fsmount_arrays): $(linux_uapi_dir)/mount.h $(fsmount_tbls) $(Q)$(SHELL) '$(fsmount_tbls)' $(linux_uapi_dir) > $@ fspick_arrays := $(beauty_outdir)/fspick_arrays.c fspick_tbls := $(srctree)/tools/perf/trace/beauty/fspick.sh -$(fspick_arrays): $(linux_uapi_dir)/fs.h $(fspick_tbls) +$(fspick_arrays): $(linux_uapi_dir)/mount.h $(fspick_tbls) $(Q)$(SHELL) '$(fspick_tbls)' $(linux_uapi_dir) > $@ fsconfig_arrays := $(beauty_outdir)/fsconfig_arrays.c fsconfig_tbls := $(srctree)/tools/perf/trace/beauty/fsconfig.sh -$(fsconfig_arrays): $(linux_uapi_dir)/fs.h $(fsconfig_tbls) +$(fsconfig_arrays): $(linux_uapi_dir)/mount.h $(fsconfig_tbls) $(Q)$(SHELL) '$(fsconfig_tbls)' $(linux_uapi_dir) > $@ pkey_alloc_access_rights_array := $(beauty_outdir)/pkey_alloc_access_rights_array.c @@ -597,13 +597,13 @@ $(mremap_flags_array): $(linux_uapi_dir)/mman.h $(mremap_flags_tbl) mount_flags_array := $(beauty_outdir)/mount_flags_array.c mount_flags_tbl := $(srctree)/tools/perf/trace/beauty/mount_flags.sh -$(mount_flags_array): $(linux_uapi_dir)/fs.h $(mount_flags_tbl) +$(mount_flags_array): $(linux_uapi_dir)/mount.h $(mount_flags_tbl) $(Q)$(SHELL) '$(mount_flags_tbl)' $(linux_uapi_dir) > $@ move_mount_flags_array := $(beauty_outdir)/move_mount_flags_array.c move_mount_flags_tbl := $(srctree)/tools/perf/trace/beauty/move_mount_flags.sh -$(move_mount_flags_array): $(linux_uapi_dir)/fs.h $(move_mount_flags_tbl) +$(move_mount_flags_array): $(linux_uapi_dir)/mount.h $(move_mount_flags_tbl) $(Q)$(SHELL) '$(move_mount_flags_tbl)' $(linux_uapi_dir) > $@ -- 2.44.0 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 1/1] perf beauty: Move uapi/linux/fs.h copy out of the directory used to build perf 2024-03-11 20:54 [PATCH 1/1] perf beauty: Fix dependency of tables using uapi/linux/mount.h Arnaldo Carvalho de Melo @ 2024-03-11 21:27 ` Arnaldo Carvalho de Melo 2024-03-12 15:42 ` Ian Rogers 0 siblings, 1 reply; 4+ messages in thread From: Arnaldo Carvalho de Melo @ 2024-03-11 21:27 UTC (permalink / raw) To: Ian Rogers Cc: Adrian Hunter, Jiri Olsa, Namhyung Kim, Linux Kernel Mailing List It is mostly used only to generate string tables, not to build perf, so move it to the tools/perf/trace/beauty/include/ hierarchy, that is used just for scrapping. The only case where it was being used to build was in tools/perf/trace/beauty/sync_file_range.c, because some older systems doesn't have the SYNC_FILE_RANGE_WRITE_AND_WAIT define, just use the system's linux/fs.h header instead, defining it if not available. This is something that should've have been done already, as happened with the linux/socket.h scrapper, do it now as Ian suggested while doing an audit/refactor session in the headers used by perf. No other tools/ living code uses it, just <linux/fs.h> coming from either 'make install_headers' or from the system /usr/include/ directory. Suggested-by: Ian Rogers <irogers@google.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Link: https://lore.kernel.org/lkml/CAP-5=fWZVrpRufO4w-S4EcSi9STXcTAN2ERLwTSN7yrSSA-otQ@mail.gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> --- tools/perf/Makefile.perf | 9 +++++---- tools/perf/check-headers.sh | 2 +- tools/{ => perf/trace/beauty}/include/uapi/linux/fs.h | 0 tools/perf/trace/beauty/rename_flags.sh | 2 +- tools/perf/trace/beauty/sync_file_range.c | 11 ++++++++++- tools/perf/trace/beauty/sync_file_range.sh | 2 +- 6 files changed, 18 insertions(+), 8 deletions(-) rename tools/{ => perf/trace/beauty}/include/uapi/linux/fs.h (100%) diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index d3a568abc38919e8..643e9fa6ec89c58c 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -472,6 +472,7 @@ arm64-sysreg-defs-clean: clean > /dev/null beauty_linux_dir := $(srctree)/tools/perf/trace/beauty/include/linux/ +beauty_uapi_linux_dir := $(srctree)/tools/perf/trace/beauty/include/uapi/linux/ linux_uapi_dir := $(srctree)/tools/include/uapi/linux asm_generic_uapi_dir := $(srctree)/tools/include/uapi/asm-generic arch_asm_uapi_dir := $(srctree)/tools/arch/$(SRCARCH)/include/uapi/asm/ @@ -647,8 +648,8 @@ $(x86_arch_MSRs_array): $(x86_arch_asm_dir)/msr-index.h $(x86_arch_MSRs_tbl) rename_flags_array := $(beauty_outdir)/rename_flags_array.c rename_flags_tbl := $(srctree)/tools/perf/trace/beauty/rename_flags.sh -$(rename_flags_array): $(linux_uapi_dir)/fs.h $(rename_flags_tbl) - $(Q)$(SHELL) '$(rename_flags_tbl)' $(linux_uapi_dir) > $@ +$(rename_flags_array): $(beauty_uapi_linux_dir)/fs.h $(rename_flags_tbl) + $(Q)$(SHELL) '$(rename_flags_tbl)' $(beauty_uapi_linux_dir) > $@ arch_errno_name_array := $(beauty_outdir)/arch_errno_name_array.c arch_errno_hdr_dir := $(srctree)/tools @@ -660,8 +661,8 @@ $(arch_errno_name_array): $(arch_errno_tbl) sync_file_range_arrays := $(beauty_outdir)/sync_file_range_arrays.c sync_file_range_tbls := $(srctree)/tools/perf/trace/beauty/sync_file_range.sh -$(sync_file_range_arrays): $(linux_uapi_dir)/fs.h $(sync_file_range_tbls) - $(Q)$(SHELL) '$(sync_file_range_tbls)' $(linux_uapi_dir) > $@ +$(sync_file_range_arrays): $(beauty_uapi_linux_dir)/fs.h $(sync_file_range_tbls) + $(Q)$(SHELL) '$(sync_file_range_tbls)' $(beauty_uapi_linux_dir) > $@ TESTS_CORESIGHT_DIR := $(srctree)/tools/perf/tests/shell/coresight diff --git a/tools/perf/check-headers.sh b/tools/perf/check-headers.sh index 66ba33dbcef22b23..015f74137b755eaf 100755 --- a/tools/perf/check-headers.sh +++ b/tools/perf/check-headers.sh @@ -11,7 +11,6 @@ FILES=( "include/uapi/drm/i915_drm.h" "include/uapi/linux/fadvise.h" "include/uapi/linux/fcntl.h" - "include/uapi/linux/fs.h" "include/uapi/linux/fscrypt.h" "include/uapi/linux/kcmp.h" "include/uapi/linux/kvm.h" @@ -98,6 +97,7 @@ SYNC_CHECK_FILES=( declare -a BEAUTY_FILES BEAUTY_FILES=( "include/linux/socket.h" + "include/uapi/linux/fs.h" ) declare -a FAILURES diff --git a/tools/include/uapi/linux/fs.h b/tools/perf/trace/beauty/include/uapi/linux/fs.h similarity index 100% rename from tools/include/uapi/linux/fs.h rename to tools/perf/trace/beauty/include/uapi/linux/fs.h diff --git a/tools/perf/trace/beauty/rename_flags.sh b/tools/perf/trace/beauty/rename_flags.sh index 94bf7f45d28e6be6..702411dd7a1c2fc2 100755 --- a/tools/perf/trace/beauty/rename_flags.sh +++ b/tools/perf/trace/beauty/rename_flags.sh @@ -2,7 +2,7 @@ # Copyright (C) 2018, Red Hat Inc, Arnaldo Carvalho de Melo <acme@redhat.com> # SPDX-License-Identifier: LGPL-2.1 -[ $# -eq 1 ] && header_dir=$1 || header_dir=tools/include/uapi/linux/ +[ $# -eq 1 ] && header_dir=$1 || header_dir=tools/perf/trace/beauty/include/uapi/linux/ fs_header=${header_dir}/fs.h diff --git a/tools/perf/trace/beauty/sync_file_range.c b/tools/perf/trace/beauty/sync_file_range.c index 1c425f04047dbb24..3e8f50ff4fc701f9 100644 --- a/tools/perf/trace/beauty/sync_file_range.c +++ b/tools/perf/trace/beauty/sync_file_range.c @@ -7,7 +7,16 @@ #include "trace/beauty/beauty.h" #include <linux/log2.h> -#include <uapi/linux/fs.h> +#include <linux/fs.h> + +#ifndef SYNC_FILE_RANGE_WRITE_AND_WAIT +#define SYNC_FILE_RANGE_WAIT_BEFORE 1 +#define SYNC_FILE_RANGE_WRITE 2 +#define SYNC_FILE_RANGE_WAIT_AFTER 4 +#define SYNC_FILE_RANGE_WRITE_AND_WAIT (SYNC_FILE_RANGE_WRITE | \ + SYNC_FILE_RANGE_WAIT_BEFORE | \ + SYNC_FILE_RANGE_WAIT_AFTER) +#endif static size_t sync_file_range__scnprintf_flags(unsigned long flags, char *bf, size_t size, bool show_prefix) { diff --git a/tools/perf/trace/beauty/sync_file_range.sh b/tools/perf/trace/beauty/sync_file_range.sh index 90bf633be879909a..b1084c4cab636b52 100755 --- a/tools/perf/trace/beauty/sync_file_range.sh +++ b/tools/perf/trace/beauty/sync_file_range.sh @@ -2,7 +2,7 @@ # SPDX-License-Identifier: LGPL-2.1 if [ $# -ne 1 ] ; then - linux_header_dir=tools/include/uapi/linux + linux_header_dir=tools/perf/trace/beauty/include/uapi/linux/ else linux_header_dir=$1 fi -- 2.44.0 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/1] perf beauty: Move uapi/linux/fs.h copy out of the directory used to build perf 2024-03-11 21:27 ` [PATCH 1/1] perf beauty: Move uapi/linux/fs.h copy out of the directory used to build perf Arnaldo Carvalho de Melo @ 2024-03-12 15:42 ` Ian Rogers 2024-03-12 16:47 ` Arnaldo Carvalho de Melo 0 siblings, 1 reply; 4+ messages in thread From: Ian Rogers @ 2024-03-12 15:42 UTC (permalink / raw) To: Arnaldo Carvalho de Melo Cc: Adrian Hunter, Jiri Olsa, Namhyung Kim, Linux Kernel Mailing List On Mon, Mar 11, 2024 at 2:27 PM Arnaldo Carvalho de Melo <acme@kernel.org> wrote: > > It is mostly used only to generate string tables, not to build perf, so > move it to the tools/perf/trace/beauty/include/ hierarchy, that is used > just for scrapping. > > The only case where it was being used to build was in > tools/perf/trace/beauty/sync_file_range.c, because some older systems > doesn't have the SYNC_FILE_RANGE_WRITE_AND_WAIT define, just use the > system's linux/fs.h header instead, defining it if not available. > > This is something that should've have been done already, as happened > with the linux/socket.h scrapper, do it now as Ian suggested while doing > an audit/refactor session in the headers used by perf. > > No other tools/ living code uses it, just <linux/fs.h> coming from > either 'make install_headers' or from the system /usr/include/ > directory. > > Suggested-by: Ian Rogers <irogers@google.com> > Cc: Adrian Hunter <adrian.hunter@intel.com> > Cc: Jiri Olsa <jolsa@kernel.org> > Cc: Namhyung Kim <namhyung@kernel.org> > Link: https://lore.kernel.org/lkml/CAP-5=fWZVrpRufO4w-S4EcSi9STXcTAN2ERLwTSN7yrSSA-otQ@mail.gmail.com > Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Reviewed-by: Ian Rogers <irogers@google.com> Thanks, Ian ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 1/1] perf beauty: Move uapi/linux/fs.h copy out of the directory used to build perf 2024-03-12 15:42 ` Ian Rogers @ 2024-03-12 16:47 ` Arnaldo Carvalho de Melo 0 siblings, 0 replies; 4+ messages in thread From: Arnaldo Carvalho de Melo @ 2024-03-12 16:47 UTC (permalink / raw) To: Ian Rogers Cc: Adrian Hunter, Jiri Olsa, Namhyung Kim, Linux Kernel Mailing List On Tue, Mar 12, 2024 at 08:42:36AM -0700, Ian Rogers wrote: > On Mon, Mar 11, 2024 at 2:27 PM Arnaldo Carvalho de Melo > <acme@kernel.org> wrote: > > > > It is mostly used only to generate string tables, not to build perf, so > > move it to the tools/perf/trace/beauty/include/ hierarchy, that is used > > just for scrapping. > > > > The only case where it was being used to build was in > > tools/perf/trace/beauty/sync_file_range.c, because some older systems > > doesn't have the SYNC_FILE_RANGE_WRITE_AND_WAIT define, just use the > > system's linux/fs.h header instead, defining it if not available. > > > > This is something that should've have been done already, as happened > > with the linux/socket.h scrapper, do it now as Ian suggested while doing > > an audit/refactor session in the headers used by perf. > > > > No other tools/ living code uses it, just <linux/fs.h> coming from > > either 'make install_headers' or from the system /usr/include/ > > directory. > > > > Suggested-by: Ian Rogers <irogers@google.com> > > Cc: Adrian Hunter <adrian.hunter@intel.com> > > Cc: Jiri Olsa <jolsa@kernel.org> > > Cc: Namhyung Kim <namhyung@kernel.org> > > Link: https://lore.kernel.org/lkml/CAP-5=fWZVrpRufO4w-S4EcSi9STXcTAN2ERLwTSN7yrSSA-otQ@mail.gmail.com > > Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> > > Reviewed-by: Ian Rogers <irogers@google.com> Thanks! - Arnaldo ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-03-12 16:47 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-03-11 20:54 [PATCH 1/1] perf beauty: Fix dependency of tables using uapi/linux/mount.h Arnaldo Carvalho de Melo 2024-03-11 21:27 ` [PATCH 1/1] perf beauty: Move uapi/linux/fs.h copy out of the directory used to build perf Arnaldo Carvalho de Melo 2024-03-12 15:42 ` Ian Rogers 2024-03-12 16:47 ` Arnaldo Carvalho de Melo
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.