The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com --- Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ---------- tools/lib/perf/Makefile | 13 ---------- tools/lib/thermal/Makefile | 13 ---------- tools/objtool/Makefile | 6 ----- tools/perf/Makefile.perf | 41 ------------------------------- tools/scripts/Makefile.include | 31 ++++++++++++++++++++++- tools/testing/selftests/bpf/Makefile.docs | 6 ----- tools/testing/selftests/hid/Makefile | 2 -- tools/thermal/lib/Makefile | 13 ---------- tools/tracing/latency/Makefile | 6 ----- tools/tracing/rtla/Makefile | 6 ----- tools/verification/rv/Makefile | 6 ----- 19 files changed, 32 insertions(+), 163 deletions(-) --- base-commit: 2014c95afecee3e76ca4a56956a936e23283f05b change-id: 20250203-quiet_tools-9a6ea9d65a19
Commit f2868b1a66d4 ("perf tools: Expose quiet/verbose variables in Makefile.perf") moved the quiet infrastructure out of tools/build/Makefile.build and into the top-level Makefile.perf file so that the quiet infrastructure could be used throughout perf and not just in Makefile.build.
Extract out the quiet infrastructure into Makefile.include so that it can be leveraged outside of perf.
Signed-off-by: Charlie Jenkins charlie@rivosinc.com Fixes: f2868b1a66d4 ("perf tools: Expose quiet/verbose variables in Makefile.perf") --- tools/build/Makefile | 8 +------- tools/perf/Makefile.perf | 41 ----------------------------------------- tools/scripts/Makefile.include | 31 ++++++++++++++++++++++++++++++- 3 files changed, 31 insertions(+), 49 deletions(-)
diff --git a/tools/build/Makefile b/tools/build/Makefile index 18ad131f6ea74aebfc3fd6aa6dddfdc00634b66c..63ef2187876169d8daaeed6f7a4ff27e4b610271 100644 --- a/tools/build/Makefile +++ b/tools/build/Makefile @@ -17,13 +17,7 @@ $(call allow-override,LD,$(CROSS_COMPILE)ld)
export HOSTCC HOSTLD HOSTAR
-ifeq ($(V),1) - Q = -else - Q = @ -endif - -export Q srctree CC LD +export srctree CC LD
MAKEFLAGS := --no-print-directory build := -f $(srctree)/tools/build/Makefile.build dir=. obj diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index 55d6ce9ea52fb2a57b8632cc6d0ddc501e29cbfc..05c083bb11220486e3246896af4fa0051f048832 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -161,47 +161,6 @@ export VPATH SOURCE := $(shell ln -sf $(srctree)/tools/perf $(OUTPUT)/source) endif
-# Beautify output -# --------------------------------------------------------------------------- -# -# Most of build commands in Kbuild start with "cmd_". You can optionally define -# "quiet_cmd_*". If defined, the short log is printed. Otherwise, no log from -# that command is printed by default. -# -# e.g.) -# quiet_cmd_depmod = DEPMOD $(MODLIB) -# cmd_depmod = $(srctree)/scripts/depmod.sh $(DEPMOD) $(KERNELRELEASE) -# -# A simple variant is to prefix commands with $(Q) - that's useful -# for commands that shall be hidden in non-verbose mode. -# -# $(Q)$(MAKE) $(build)=scripts/basic -# -# To put more focus on warnings, be less verbose as default -# Use 'make V=1' to see the full commands - -ifeq ($(V),1) - quiet = - Q = -else - quiet=quiet_ - Q=@ -endif - -# If the user is running make -s (silent mode), suppress echoing of commands -# make-4.0 (and later) keep single letter options in the 1st word of MAKEFLAGS. -ifeq ($(filter 3.%,$(MAKE_VERSION)),) -short-opts := $(firstword -$(MAKEFLAGS)) -else -short-opts := $(filter-out --%,$(MAKEFLAGS)) -endif - -ifneq ($(findstring s,$(short-opts)),) - quiet=silent_ -endif - -export quiet Q - # Do not use make's built-in rules # (this improves performance and avoids hard-to-debug behaviour); MAKEFLAGS += -r diff --git a/tools/scripts/Makefile.include b/tools/scripts/Makefile.include index 0aa4005017c72f10bb7c5e47bc78ec81718c47ef..c4f240042f02bf76994b1e183b3c1c464cb5ed95 100644 --- a/tools/scripts/Makefile.include +++ b/tools/scripts/Makefile.include @@ -136,6 +136,33 @@ else NO_SUBDIR = : endif
+# Beautify output +# --------------------------------------------------------------------------- +# +# Most of build commands in Kbuild start with "cmd_". You can optionally define +# "quiet_cmd_*". If defined, the short log is printed. Otherwise, no log from +# that command is printed by default. +# +# e.g.) +# quiet_cmd_depmod = DEPMOD $(MODLIB) +# cmd_depmod = $(srctree)/scripts/depmod.sh $(DEPMOD) $(KERNELRELEASE) +# +# A simple variant is to prefix commands with $(Q) - that's useful +# for commands that shall be hidden in non-verbose mode. +# +# $(Q)$(MAKE) $(build)=scripts/basic +# +# To put more focus on warnings, be less verbose as default +# Use 'make V=1' to see the full commands + +ifeq ($(V),1) + quiet = + Q = +else + quiet=quiet_ + Q=@ +endif + # If the user is running make -s (silent mode), suppress echoing of commands # make-4.0 (and later) keep single letter options in the 1st word of MAKEFLAGS. ifeq ($(filter 3.%,$(MAKE_VERSION)),) @@ -145,9 +172,11 @@ short-opts := $(filter-out --%,$(MAKEFLAGS)) endif
ifneq ($(findstring s,$(short-opts)),) - silent=1 + quiet=silent_ endif
+export quiet Q + # # Define a callable command for descending to a new directory #
Q is exported from Makefile.include so it is not necessary to manually set it.
Signed-off-by: Charlie Jenkins charlie@rivosinc.com --- tools/arch/arm64/tools/Makefile | 6 ------ tools/bpf/Makefile | 6 ------ tools/bpf/bpftool/Documentation/Makefile | 6 ------ tools/bpf/bpftool/Makefile | 6 ------ tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +---- tools/lib/bpf/Makefile | 13 ------------- tools/lib/perf/Makefile | 13 ------------- tools/lib/thermal/Makefile | 13 ------------- tools/objtool/Makefile | 6 ------ tools/testing/selftests/bpf/Makefile.docs | 6 ------ tools/testing/selftests/hid/Makefile | 2 -- tools/thermal/lib/Makefile | 13 ------------- tools/tracing/latency/Makefile | 6 ------ tools/tracing/rtla/Makefile | 6 ------ tools/verification/rv/Makefile | 6 ------ 16 files changed, 1 insertion(+), 114 deletions(-)
diff --git a/tools/arch/arm64/tools/Makefile b/tools/arch/arm64/tools/Makefile index 7b42feedf647190ad498de0937e8fb557e40f39c..de4f1b66ef0148b7bfd0fd16655ad854c7542240 100644 --- a/tools/arch/arm64/tools/Makefile +++ b/tools/arch/arm64/tools/Makefile @@ -13,12 +13,6 @@ AWK ?= awk MKDIR ?= mkdir RM ?= rm
-ifeq ($(V),1) -Q = -else -Q = @ -endif - arm64_tools_dir = $(top_srcdir)/arch/arm64/tools arm64_sysreg_tbl = $(arm64_tools_dir)/sysreg arm64_gen_sysreg = $(arm64_tools_dir)/gen-sysreg.awk diff --git a/tools/bpf/Makefile b/tools/bpf/Makefile index 243b79f2b451e52ca196f79dc46befd1b3dab458..062bbd6cd048e9e42f9bc8f9972ec96594f3dbd2 100644 --- a/tools/bpf/Makefile +++ b/tools/bpf/Makefile @@ -27,12 +27,6 @@ srctree := $(patsubst %/,%,$(dir $(CURDIR))) srctree := $(patsubst %/,%,$(dir $(srctree))) endif
-ifeq ($(V),1) - Q = -else - Q = @ -endif - FEATURE_USER = .bpf FEATURE_TESTS = libbfd disassembler-four-args disassembler-init-styled FEATURE_DISPLAY = libbfd diff --git a/tools/bpf/bpftool/Documentation/Makefile b/tools/bpf/bpftool/Documentation/Makefile index 4315652678b9f2e27e48b7815f3b9ddc70a57165..bf843f328812e10dd65a73f355f74e6825ad95b9 100644 --- a/tools/bpf/bpftool/Documentation/Makefile +++ b/tools/bpf/bpftool/Documentation/Makefile @@ -5,12 +5,6 @@ INSTALL ?= install RM ?= rm -f RMDIR ?= rmdir --ignore-fail-on-non-empty
-ifeq ($(V),1) - Q = -else - Q = @ -endif - prefix ?= /usr/local mandir ?= $(prefix)/man man8dir = $(mandir)/man8 diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile index dd9f3ec842017f1dd24054bf3a0986d546811dc4..6ea4823b770cbbe7fd9eb7da79956cc1dae1f204 100644 --- a/tools/bpf/bpftool/Makefile +++ b/tools/bpf/bpftool/Makefile @@ -7,12 +7,6 @@ srctree := $(patsubst %/,%,$(dir $(srctree))) srctree := $(patsubst %/,%,$(dir $(srctree))) endif
-ifeq ($(V),1) - Q = -else - Q = @ -endif - BPF_DIR = $(srctree)/tools/lib/bpf
ifneq ($(OUTPUT),) diff --git a/tools/bpf/resolve_btfids/Makefile b/tools/bpf/resolve_btfids/Makefile index 4b8079f294f65b284481e9a2bf6ff52594a4669a..afbddea3a39c64ffb2efc874a3637b6401791c5b 100644 --- a/tools/bpf/resolve_btfids/Makefile +++ b/tools/bpf/resolve_btfids/Makefile @@ -5,10 +5,8 @@ include ../../scripts/Makefile.arch srctree := $(abspath $(CURDIR)/../../../)
ifeq ($(V),1) - Q = msg = else - Q = @ ifeq ($(silent),1) msg = else diff --git a/tools/bpf/runqslower/Makefile b/tools/bpf/runqslower/Makefile index c4f1f1735af659c2e660a322dbf6912d9a5724bc..e49203ebd48c18607a6136a9e805ccf16ee960d3 100644 --- a/tools/bpf/runqslower/Makefile +++ b/tools/bpf/runqslower/Makefile @@ -26,10 +26,7 @@ VMLINUX_BTF_PATHS := $(if $(O),$(O)/vmlinux) \ VMLINUX_BTF_PATH := $(or $(VMLINUX_BTF),$(firstword \ $(wildcard $(VMLINUX_BTF_PATHS))))
-ifeq ($(V),1) -Q = -else -Q = @ +ifneq ($(V),1) MAKEFLAGS += --no-print-directory submake_extras := feature_display=0 endif diff --git a/tools/lib/bpf/Makefile b/tools/lib/bpf/Makefile index 857a5f7b413d6dc4cbe7bc4167496674dd08d875..168140f8e6461bd06db40e23d21a3fb8847ccbf4 100644 --- a/tools/lib/bpf/Makefile +++ b/tools/lib/bpf/Makefile @@ -53,13 +53,6 @@ include $(srctree)/tools/scripts/Makefile.include
# copy a bit from Linux kbuild
-ifeq ("$(origin V)", "command line") - VERBOSE = $(V) -endif -ifndef VERBOSE - VERBOSE = 0 -endif - INCLUDES = -I$(or $(OUTPUT),.) \ -I$(srctree)/tools/include -I$(srctree)/tools/include/uapi \ -I$(srctree)/tools/arch/$(SRCARCH)/include @@ -96,12 +89,6 @@ override CFLAGS += $(CLANG_CROSS_FLAGS) # flags specific for shared library SHLIB_FLAGS := -DSHARED -fPIC
-ifeq ($(VERBOSE),1) - Q = -else - Q = @ -endif - # Disable command line variables (CFLAGS) override from top # level Makefile (perf), otherwise build Makefile will get # the same command line setup. diff --git a/tools/lib/perf/Makefile b/tools/lib/perf/Makefile index 3a9b2140aa048ea919c69ed2240bf0ea444dbf21..e9a7ac2c062e2b398c2f22af41907b62815ca07e 100644 --- a/tools/lib/perf/Makefile +++ b/tools/lib/perf/Makefile @@ -39,19 +39,6 @@ libdir = $(prefix)/$(libdir_relative) libdir_SQ = $(subst ',''',$(libdir)) libdir_relative_SQ = $(subst ',''',$(libdir_relative))
-ifeq ("$(origin V)", "command line") - VERBOSE = $(V) -endif -ifndef VERBOSE - VERBOSE = 0 -endif - -ifeq ($(VERBOSE),1) - Q = -else - Q = @ -endif - TEST_ARGS := $(if $(V),-v)
# Set compile option CFLAGS diff --git a/tools/lib/thermal/Makefile b/tools/lib/thermal/Makefile index 8890fd57b110ccc1a837d37624a5dead00f18656..a1f5e388644d31d36f973d3ddce48d036ee0a083 100644 --- a/tools/lib/thermal/Makefile +++ b/tools/lib/thermal/Makefile @@ -39,19 +39,6 @@ libdir = $(prefix)/$(libdir_relative) libdir_SQ = $(subst ',''',$(libdir)) libdir_relative_SQ = $(subst ',''',$(libdir_relative))
-ifeq ("$(origin V)", "command line") - VERBOSE = $(V) -endif -ifndef VERBOSE - VERBOSE = 0 -endif - -ifeq ($(VERBOSE),1) - Q = -else - Q = @ -endif - # Set compile option CFLAGS ifdef EXTRA_CFLAGS CFLAGS := $(EXTRA_CFLAGS) diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile index f56e2772753414ff8d3462bdebbc8e95e7667fcd..7a65948892e569cbe1d6e5a78db68bb35102cd26 100644 --- a/tools/objtool/Makefile +++ b/tools/objtool/Makefile @@ -46,12 +46,6 @@ HOST_OVERRIDES := CC="$(HOSTCC)" LD="$(HOSTLD)" AR="$(HOSTAR)" AWK = awk MKDIR = mkdir
-ifeq ($(V),1) - Q = -else - Q = @ -endif - BUILD_ORC := n
ifeq ($(SRCARCH),x86) diff --git a/tools/testing/selftests/bpf/Makefile.docs b/tools/testing/selftests/bpf/Makefile.docs index eb6a4fea8c794d8354363ac8daa0baac3e3bd060..f7f9e7088bb38c7507282990fb62921ca7a636d2 100644 --- a/tools/testing/selftests/bpf/Makefile.docs +++ b/tools/testing/selftests/bpf/Makefile.docs @@ -7,12 +7,6 @@ INSTALL ?= install RM ?= rm -f RMDIR ?= rmdir --ignore-fail-on-non-empty
-ifeq ($(V),1) - Q = -else - Q = @ -endif - prefix ?= /usr/local mandir ?= $(prefix)/man man2dir = $(mandir)/man2 diff --git a/tools/testing/selftests/hid/Makefile b/tools/testing/selftests/hid/Makefile index 0336353bd15f0d56dbed6c8fa02f53c234f949e1..2839d2612ce3a70f4332f8e886586e9cca6f03cb 100644 --- a/tools/testing/selftests/hid/Makefile +++ b/tools/testing/selftests/hid/Makefile @@ -43,10 +43,8 @@ TEST_GEN_PROGS = hid_bpf hidraw # $3 - target (assumed to be file); only file name will be emitted; # $4 - optional extra arg, emitted as-is, if provided. ifeq ($(V),1) -Q = msg = else -Q = @ msg = @printf ' %-8s%s %s%s\n' "$(1)" "$(if $(2), [$(2)])" "$(notdir $(3))" "$(if $(4), $(4))"; MAKEFLAGS += --no-print-directory submake_extras := feature_display=0 diff --git a/tools/thermal/lib/Makefile b/tools/thermal/lib/Makefile index f2552f73a64c7eb1be24c27b3a1414617391315b..056d212f25cf51cd8c02260fbe2ef28dda5e4acb 100644 --- a/tools/thermal/lib/Makefile +++ b/tools/thermal/lib/Makefile @@ -39,19 +39,6 @@ libdir = $(prefix)/$(libdir_relative) libdir_SQ = $(subst ',''',$(libdir)) libdir_relative_SQ = $(subst ',''',$(libdir_relative))
-ifeq ("$(origin V)", "command line") - VERBOSE = $(V) -endif -ifndef VERBOSE - VERBOSE = 0 -endif - -ifeq ($(VERBOSE),1) - Q = -else - Q = @ -endif - # Set compile option CFLAGS ifdef EXTRA_CFLAGS CFLAGS := $(EXTRA_CFLAGS) diff --git a/tools/tracing/latency/Makefile b/tools/tracing/latency/Makefile index 6518b03e05c71b4fa84498f9628adf81a38c9f56..257a56b1899f23837de533353e9c2cebdb6035bd 100644 --- a/tools/tracing/latency/Makefile +++ b/tools/tracing/latency/Makefile @@ -37,12 +37,6 @@ FEATURE_TESTS += libtracefs FEATURE_DISPLAY := libtraceevent FEATURE_DISPLAY += libtracefs
-ifeq ($(V),1) - Q = -else - Q = @ -endif - all: $(LATENCY-COLLECTOR)
include $(srctree)/tools/build/Makefile.include diff --git a/tools/tracing/rtla/Makefile b/tools/tracing/rtla/Makefile index 8b5101457c70b48e9c720f1ba53293f1307c15a2..0b61208db604ec0754024c3007db6b2fe74a613c 100644 --- a/tools/tracing/rtla/Makefile +++ b/tools/tracing/rtla/Makefile @@ -37,12 +37,6 @@ FEATURE_DISPLAY := libtraceevent FEATURE_DISPLAY += libtracefs FEATURE_DISPLAY += libcpupower
-ifeq ($(V),1) - Q = -else - Q = @ -endif - all: $(RTLA)
include $(srctree)/tools/build/Makefile.include diff --git a/tools/verification/rv/Makefile b/tools/verification/rv/Makefile index 411d62b3d8eb93abf85526ad33cafd783df86bc1..5b898360ba4818b12e8a16c27bd88c75d0076fb9 100644 --- a/tools/verification/rv/Makefile +++ b/tools/verification/rv/Makefile @@ -35,12 +35,6 @@ FEATURE_TESTS += libtracefs FEATURE_DISPLAY := libtraceevent FEATURE_DISPLAY += libtracefs
-ifeq ($(V),1) - Q = -else - Q = @ -endif - all: $(RV)
include $(srctree)/tools/build/Makefile.include
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote:
The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com
Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote:
The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com
Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
- Charlie
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote:
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote:
The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com
Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Thanks, Namhyung
On Tue, Feb 4, 2025 at 7:04 PM Namhyung Kim namhyung@kernel.org wrote:
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote:
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote:
The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com
Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Just revert f2868b1a66d4f40f that created this mess.
On Tue, Feb 04, 2025 at 11:02:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 7:04 PM Namhyung Kim namhyung@kernel.org wrote:
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote:
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote:
The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com
Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Just revert f2868b1a66d4f40f that created this mess.
Why are you opposed to unifying this helpers among the various projects in tools? Can you explain what about this breaks the Github syncing flow and why it cannot be resolved? It doesn't make sense to duplicate "Q=" in every Makefile anybody ever wants to add to tools just because bpf syncing isn't robust.
- Charlie
On Tue, Feb 4, 2025 at 3:24 PM Charlie Jenkins charlie@rivosinc.com wrote:
On Tue, Feb 04, 2025 at 11:02:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 7:04 PM Namhyung Kim namhyung@kernel.org wrote:
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote:
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote:
The quiet infrastructure was moved out of Makefile.build to accomidate the new syscall table generation scripts in perf. Syscall table generation wanted to also be able to be quiet, so instead of again copying the code to set the quiet variables, the code was moved into Makefile.perf to be used globally. This was not the right solution. It should have been moved even further upwards in the call chain. Makefile.include is imported in many files so this seems like a proper place to put it.
To:
Signed-off-by: Charlie Jenkins charlie@rivosinc.com
Charlie Jenkins (2): tools: Unify top-level quiet infrastructure tools: Remove redundant quiet setup
tools/arch/arm64/tools/Makefile | 6 ----- tools/bpf/Makefile | 6 ----- tools/bpf/bpftool/Documentation/Makefile | 6 ----- tools/bpf/bpftool/Makefile | 6 ----- tools/bpf/resolve_btfids/Makefile | 2 -- tools/bpf/runqslower/Makefile | 5 +--- tools/build/Makefile | 8 +----- tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Just revert f2868b1a66d4f40f that created this mess.
Why are you opposed to unifying this helpers among the various projects in tools? Can you explain what about this breaks the Github syncing flow and why it cannot be resolved? It doesn't make sense to duplicate "Q=" in every Makefile anybody ever wants to add to tools just because bpf syncing isn't robust.
Alexei's concern about Github mirrors of bpftool and libbpf isn't valid. Github versions of those projects use their own independent Makefiles anyways, so your change doesn't break that aspect.
But your change *does* break both libbpf's and bpftool's make output *in the kernel repo*. With this patch we basically don't have "quiet" mode anymore:
$ git co f2868b1a66d4f40f07e985b0beead606b2753602 HEAD is now at f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf $ git log --oneline -n1 f2868b1a66d4 (HEAD) perf tools: Expose quiet/verbose variables in Makefile.perf $ pwd /home/andriin/linux/tools/lib/bpf $ make gcc -Wp,-MD,/data/users/andriin/linux/tools/lib/bpf/staticobjs/.libbpf.o.d -Wp,-MT,/data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o -g -O2 -std=gnu89 -Wbad-function-cast -Wdeclaration-after-statement -Wformat-security -Wformat-y2k -Winit-self -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-system-headers -Wold-style-definition -Wpacked -Wredundant-decls -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wwrite-strings -Wformat -Wno-type-limits -Wstrict-aliasing=3 -Wshadow -Wno-switch-enum -Werror -Wall -I/data/users/andriin/linux/tools/lib/bpf/ -I/data/users/andriin/linux/tools/include -I/data/users/andriin/linux/tools/include/uapi -I/data/users/andriin/linux/tools/arch/x86/include -fvisibility=hidden -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D"BUILD_STR(s)=#s" -c -o /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o libbpf.c ^Cmake[2]: *** [/data/users/andriin/linux/tools/build/Makefile.build:86: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o] Interrupt make[1]: *** [Makefile:165: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf-in.o] Interrupt make: *** [Makefile:143: all] Interrupt
$ git co HEAD~ Previous HEAD position was f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf HEAD is now at e9cbc854d8b1 perf config: Add a function to set one variable in .perfconfig $ make CC /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o ^C
So, can you please check and fix?
Also, looking at your patch:
a) you removed the `"$(origin V)", "command line"` check from both perf and libbpf, so that's not really an equivalent change/behavior now
b) a bit sloppy on assignment:
+ifeq ($(V),1) + quiet = + Q = +else + quiet=quiet_ + Q=@ +endif
note the spaces around '=', try to keep stuff like this consistent (and if this was shell, it would bite you as well)
- Charlie
On Wed, Feb 05, 2025 at 05:28:19PM -0800, Andrii Nakryiko wrote:
On Tue, Feb 4, 2025 at 3:24 PM Charlie Jenkins charlie@rivosinc.com wrote:
On Tue, Feb 04, 2025 at 11:02:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 7:04 PM Namhyung Kim namhyung@kernel.org wrote:
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote:
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote: > > The quiet infrastructure was moved out of Makefile.build to accomidate > the new syscall table generation scripts in perf. Syscall table > generation wanted to also be able to be quiet, so instead of again > copying the code to set the quiet variables, the code was moved into > Makefile.perf to be used globally. This was not the right solution. It > should have been moved even further upwards in the call chain. > Makefile.include is imported in many files so this seems like a proper > place to put it. > > To: > > Signed-off-by: Charlie Jenkins charlie@rivosinc.com > --- > Charlie Jenkins (2): > tools: Unify top-level quiet infrastructure > tools: Remove redundant quiet setup > > tools/arch/arm64/tools/Makefile | 6 ----- > tools/bpf/Makefile | 6 ----- > tools/bpf/bpftool/Documentation/Makefile | 6 ----- > tools/bpf/bpftool/Makefile | 6 ----- > tools/bpf/resolve_btfids/Makefile | 2 -- > tools/bpf/runqslower/Makefile | 5 +--- > tools/build/Makefile | 8 +----- > tools/lib/bpf/Makefile | 13 ----------
Nack. libbpf and bpftool are synced independently to github and released from there. This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Just revert f2868b1a66d4f40f that created this mess.
Why are you opposed to unifying this helpers among the various projects in tools? Can you explain what about this breaks the Github syncing flow and why it cannot be resolved? It doesn't make sense to duplicate "Q=" in every Makefile anybody ever wants to add to tools just because bpf syncing isn't robust.
Alexei's concern about Github mirrors of bpftool and libbpf isn't valid. Github versions of those projects use their own independent Makefiles anyways, so your change doesn't break that aspect.
But your change *does* break both libbpf's and bpftool's make output *in the kernel repo*. With this patch we basically don't have "quiet" mode anymore:
$ git co f2868b1a66d4f40f07e985b0beead606b2753602 HEAD is now at f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf $ git log --oneline -n1 f2868b1a66d4 (HEAD) perf tools: Expose quiet/verbose variables in Makefile.perf $ pwd /home/andriin/linux/tools/lib/bpf $ make gcc -Wp,-MD,/data/users/andriin/linux/tools/lib/bpf/staticobjs/.libbpf.o.d -Wp,-MT,/data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o -g -O2 -std=gnu89 -Wbad-function-cast -Wdeclaration-after-statement -Wformat-security -Wformat-y2k -Winit-self -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-system-headers -Wold-style-definition -Wpacked -Wredundant-decls -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wwrite-strings -Wformat -Wno-type-limits -Wstrict-aliasing=3 -Wshadow -Wno-switch-enum -Werror -Wall -I/data/users/andriin/linux/tools/lib/bpf/ -I/data/users/andriin/linux/tools/include -I/data/users/andriin/linux/tools/include/uapi -I/data/users/andriin/linux/tools/arch/x86/include -fvisibility=hidden -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D"BUILD_STR(s)=#s" -c -o /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o libbpf.c ^Cmake[2]: *** [/data/users/andriin/linux/tools/build/Makefile.build:86: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o] Interrupt make[1]: *** [Makefile:165: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf-in.o] Interrupt make: *** [Makefile:143: all] Interrupt
$ git co HEAD~ Previous HEAD position was f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf HEAD is now at e9cbc854d8b1 perf config: Add a function to set one variable in .perfconfig $ make CC /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o ^C
So, can you please check and fix?
I think I am misunderstanding what you are saying. The patch that we are discussing on is the patch to fix this? You are showing the output from the patch that is being fixed in this series.
Also, looking at your patch:
a) you removed the `"$(origin V)", "command line"` check from both perf and libbpf, so that's not really an equivalent change/behavior now
I don't believe it is required to keep that check.
b) a bit sloppy on assignment:
+ifeq ($(V),1)
- quiet =
- Q =
+else
- quiet=quiet_
- Q=@
+endif
note the spaces around '=', try to keep stuff like this consistent (and if this was shell, it would bite you as well)
Yes, I can make that consistent.
- Charlie
On Mon, Feb 10, 2025 at 10:31 AM Charlie Jenkins charlie@rivosinc.com wrote:
On Wed, Feb 05, 2025 at 05:28:19PM -0800, Andrii Nakryiko wrote:
On Tue, Feb 4, 2025 at 3:24 PM Charlie Jenkins charlie@rivosinc.com wrote:
On Tue, Feb 04, 2025 at 11:02:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 7:04 PM Namhyung Kim namhyung@kernel.org wrote:
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote:
On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote: > On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote: > > > > The quiet infrastructure was moved out of Makefile.build to accomidate > > the new syscall table generation scripts in perf. Syscall table > > generation wanted to also be able to be quiet, so instead of again > > copying the code to set the quiet variables, the code was moved into > > Makefile.perf to be used globally. This was not the right solution. It > > should have been moved even further upwards in the call chain. > > Makefile.include is imported in many files so this seems like a proper > > place to put it. > > > > To: > > > > Signed-off-by: Charlie Jenkins charlie@rivosinc.com > > --- > > Charlie Jenkins (2): > > tools: Unify top-level quiet infrastructure > > tools: Remove redundant quiet setup > > > > tools/arch/arm64/tools/Makefile | 6 ----- > > tools/bpf/Makefile | 6 ----- > > tools/bpf/bpftool/Documentation/Makefile | 6 ----- > > tools/bpf/bpftool/Makefile | 6 ----- > > tools/bpf/resolve_btfids/Makefile | 2 -- > > tools/bpf/runqslower/Makefile | 5 +--- > > tools/build/Makefile | 8 +----- > > tools/lib/bpf/Makefile | 13 ---------- > > Nack. > libbpf and bpftool are synced independently to github > and released from there. > This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
Can you explain how it breaks it? Currently bpftool and resolve_btfids don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Just revert f2868b1a66d4f40f that created this mess.
Why are you opposed to unifying this helpers among the various projects in tools? Can you explain what about this breaks the Github syncing flow and why it cannot be resolved? It doesn't make sense to duplicate "Q=" in every Makefile anybody ever wants to add to tools just because bpf syncing isn't robust.
Alexei's concern about Github mirrors of bpftool and libbpf isn't valid. Github versions of those projects use their own independent Makefiles anyways, so your change doesn't break that aspect.
But your change *does* break both libbpf's and bpftool's make output *in the kernel repo*. With this patch we basically don't have "quiet" mode anymore:
$ git co f2868b1a66d4f40f07e985b0beead606b2753602 HEAD is now at f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf $ git log --oneline -n1 f2868b1a66d4 (HEAD) perf tools: Expose quiet/verbose variables in Makefile.perf $ pwd /home/andriin/linux/tools/lib/bpf $ make gcc -Wp,-MD,/data/users/andriin/linux/tools/lib/bpf/staticobjs/.libbpf.o.d -Wp,-MT,/data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o -g -O2 -std=gnu89 -Wbad-function-cast -Wdeclaration-after-statement -Wformat-security -Wformat-y2k -Winit-self -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-system-headers -Wold-style-definition -Wpacked -Wredundant-decls -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wwrite-strings -Wformat -Wno-type-limits -Wstrict-aliasing=3 -Wshadow -Wno-switch-enum -Werror -Wall -I/data/users/andriin/linux/tools/lib/bpf/ -I/data/users/andriin/linux/tools/include -I/data/users/andriin/linux/tools/include/uapi -I/data/users/andriin/linux/tools/arch/x86/include -fvisibility=hidden -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D"BUILD_STR(s)=#s" -c -o /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o libbpf.c ^Cmake[2]: *** [/data/users/andriin/linux/tools/build/Makefile.build:86: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o] Interrupt make[1]: *** [Makefile:165: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf-in.o] Interrupt make: *** [Makefile:143: all] Interrupt
$ git co HEAD~ Previous HEAD position was f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf HEAD is now at e9cbc854d8b1 perf config: Add a function to set one variable in .perfconfig $ make CC /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o ^C
So, can you please check and fix?
I think I am misunderstanding what you are saying. The patch that we are discussing on is the patch to fix this? You are showing the output from the patch that is being fixed in this series.
Ah, it's me getting confused. It was the earlier perf commit that broke all this, makes sense. I just double-checked with your patches applied locally. It indeed fixes the issue, LGTM.
Acked-by: Andrii Nakryiko andrii@kernel.org
Also, looking at your patch:
a) you removed the `"$(origin V)", "command line"` check from both perf and libbpf, so that's not really an equivalent change/behavior now
I don't believe it is required to keep that check.
b) a bit sloppy on assignment:
+ifeq ($(V),1)
- quiet =
- Q =
+else
- quiet=quiet_
- Q=@
+endif
note the spaces around '=', try to keep stuff like this consistent (and if this was shell, it would bite you as well)
Yes, I can make that consistent.
- Charlie
On Mon, Feb 10, 2025 at 04:23:49PM -0800, Andrii Nakryiko wrote:
On Mon, Feb 10, 2025 at 10:31 AM Charlie Jenkins charlie@rivosinc.com wrote:
On Wed, Feb 05, 2025 at 05:28:19PM -0800, Andrii Nakryiko wrote:
On Tue, Feb 4, 2025 at 3:24 PM Charlie Jenkins charlie@rivosinc.com wrote:
On Tue, Feb 04, 2025 at 11:02:42PM +0000, Alexei Starovoitov wrote:
On Tue, Feb 4, 2025 at 7:04 PM Namhyung Kim namhyung@kernel.org wrote:
Hello,
On Tue, Feb 04, 2025 at 10:34:41AM -0800, Charlie Jenkins wrote: > On Tue, Feb 04, 2025 at 05:18:42PM +0000, Alexei Starovoitov wrote: > > On Tue, Feb 4, 2025 at 12:10 AM Charlie Jenkins charlie@rivosinc.com wrote: > > > > > > The quiet infrastructure was moved out of Makefile.build to accomidate > > > the new syscall table generation scripts in perf. Syscall table > > > generation wanted to also be able to be quiet, so instead of again > > > copying the code to set the quiet variables, the code was moved into > > > Makefile.perf to be used globally. This was not the right solution. It > > > should have been moved even further upwards in the call chain. > > > Makefile.include is imported in many files so this seems like a proper > > > place to put it. > > > > > > To: > > > > > > Signed-off-by: Charlie Jenkins charlie@rivosinc.com > > > --- > > > Charlie Jenkins (2): > > > tools: Unify top-level quiet infrastructure > > > tools: Remove redundant quiet setup > > > > > > tools/arch/arm64/tools/Makefile | 6 ----- > > > tools/bpf/Makefile | 6 ----- > > > tools/bpf/bpftool/Documentation/Makefile | 6 ----- > > > tools/bpf/bpftool/Makefile | 6 ----- > > > tools/bpf/resolve_btfids/Makefile | 2 -- > > > tools/bpf/runqslower/Makefile | 5 +--- > > > tools/build/Makefile | 8 +----- > > > tools/lib/bpf/Makefile | 13 ---------- > > > > Nack. > > libbpf and bpftool are synced independently to github > > and released from there. > > This change breaks it.
Sorry, I overlooked this part and merged a change that touched the common files into the perf tree.
f2868b1a66d4f40f ("perf tools: Expose quiet/verbose variables in Makefile.perf")
Unfortunately, it's already in v6.14-rc1.
> > Can you explain how it breaks it? Currently bpftool and resolve_btfids > don't build quietly so this was an attempt to fix that.
So I think you will need something like this for v6.14. Again, sorry about the trouble.
Just revert f2868b1a66d4f40f that created this mess.
Why are you opposed to unifying this helpers among the various projects in tools? Can you explain what about this breaks the Github syncing flow and why it cannot be resolved? It doesn't make sense to duplicate "Q=" in every Makefile anybody ever wants to add to tools just because bpf syncing isn't robust.
Alexei's concern about Github mirrors of bpftool and libbpf isn't valid. Github versions of those projects use their own independent Makefiles anyways, so your change doesn't break that aspect.
But your change *does* break both libbpf's and bpftool's make output *in the kernel repo*. With this patch we basically don't have "quiet" mode anymore:
$ git co f2868b1a66d4f40f07e985b0beead606b2753602 HEAD is now at f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf $ git log --oneline -n1 f2868b1a66d4 (HEAD) perf tools: Expose quiet/verbose variables in Makefile.perf $ pwd /home/andriin/linux/tools/lib/bpf $ make gcc -Wp,-MD,/data/users/andriin/linux/tools/lib/bpf/staticobjs/.libbpf.o.d -Wp,-MT,/data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o -g -O2 -std=gnu89 -Wbad-function-cast -Wdeclaration-after-statement -Wformat-security -Wformat-y2k -Winit-self -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-system-headers -Wold-style-definition -Wpacked -Wredundant-decls -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wwrite-strings -Wformat -Wno-type-limits -Wstrict-aliasing=3 -Wshadow -Wno-switch-enum -Werror -Wall -I/data/users/andriin/linux/tools/lib/bpf/ -I/data/users/andriin/linux/tools/include -I/data/users/andriin/linux/tools/include/uapi -I/data/users/andriin/linux/tools/arch/x86/include -fvisibility=hidden -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D"BUILD_STR(s)=#s" -c -o /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o libbpf.c ^Cmake[2]: *** [/data/users/andriin/linux/tools/build/Makefile.build:86: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o] Interrupt make[1]: *** [Makefile:165: /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf-in.o] Interrupt make: *** [Makefile:143: all] Interrupt
$ git co HEAD~ Previous HEAD position was f2868b1a66d4 perf tools: Expose quiet/verbose variables in Makefile.perf HEAD is now at e9cbc854d8b1 perf config: Add a function to set one variable in .perfconfig $ make CC /data/users/andriin/linux/tools/lib/bpf/staticobjs/libbpf.o ^C
So, can you please check and fix?
I think I am misunderstanding what you are saying. The patch that we are discussing on is the patch to fix this? You are showing the output from the patch that is being fixed in this series.
Ah, it's me getting confused. It was the earlier perf commit that broke all this, makes sense. I just double-checked with your patches applied locally. It indeed fixes the issue, LGTM.
Acked-by: Andrii Nakryiko andrii@kernel.org
Thanks, b4 didn't pick this one, probably because you provided the Ack for a previous version of this series, but the patch in it is the same as in v2, so I'm keeping it, ok?
Also since you applied the patches and tested it, can I promote the tag to Tested-by you?
Humm, there is a slight difference, checking that in the e-mails thread...
+ quiet = quiet_ + Q = @
The above doesn´t have spaces surrounding the = sign, lemme see...
- Arnaldo
On Tue, Feb 18, 2025 at 07:39:44PM +0100, Arnaldo Carvalho de Melo wrote:
On Mon, Feb 10, 2025 at 04:23:49PM -0800, Andrii Nakryiko wrote:
On Mon, Feb 10, 2025 at 10:31 AM Charlie Jenkins charlie@rivosinc.com wrote:
On Wed, Feb 05, 2025 at 05:28:19PM -0800, Andrii Nakryiko wrote:
On Tue, Feb 4, 2025 at 3:24 PM Charlie Jenkins charlie@rivosinc.com wrote: So, can you please check and fix?
I think I am misunderstanding what you are saying. The patch that we are discussing on is the patch to fix this? You are showing the output from the patch that is being fixed in this series.
Ah, it's me getting confused. It was the earlier perf commit that broke all this, makes sense. I just double-checked with your patches applied locally. It indeed fixes the issue, LGTM.
Acked-by: Andrii Nakryiko andrii@kernel.org
Thanks, b4 didn't pick this one, probably because you provided the Ack for a previous version of this series, but the patch in it is the same as in v2, so I'm keeping it, ok?
Also since you applied the patches and tested it, can I promote the tag to Tested-by you?
Humm, there is a slight difference, checking that in the e-mails thread...
- quiet = quiet_
- Q = @
The above doesn´t have spaces surrounding the = sign, lemme see...
Got it, the comment about consistency, etc.
Can I use the Tested-by: for the v3 series?
- Arnaldo
linux-kselftest-mirror@lists.linaro.org