Makefile | 2 +- scripts/dummy-tools/pahole | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100755 scripts/dummy-tools/pahole
CONFIG_PAHOLE_VERSION is a part of a config since the commit below. And
when multiple people update the config, this value constantly changes.
Even if they use dummy scripts.
To fix this:
* add a pahole dummy script returning v99.99 -> 9999
* call it in Makefile taking CROSS_COMPILE into account.
The latter happens only if $(CROSS_COMPILE)pahole really exists. This is
because a cross pahole likely exists only in dummy tools now, not in
real cross tools.
Fixes: 613fe1692377 (kbuild: Add CONFIG_PAHOLE_VERSION)
Cc: Masahiro Yamada <masahiroy@kernel.org>
Cc: Michal Marek <michal.lkml@markovi.net>
Cc: Nick Desaulniers <ndesaulniers@google.com>
Cc: linux-kbuild@vger.kernel.org
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
Makefile | 2 +-
scripts/dummy-tools/pahole | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
create mode 100755 scripts/dummy-tools/pahole
diff --git a/Makefile b/Makefile
index ecbd42f3451a..2ef722ba0a41 100644
--- a/Makefile
+++ b/Makefile
@@ -502,7 +502,7 @@ RUSTFMT = rustfmt
CLIPPY_DRIVER = clippy-driver
BINDGEN = bindgen
CARGO = cargo
-PAHOLE = pahole
+PAHOLE = $(if $(wildcard $(CROSS_COMPILE)pahole),$(CROSS_COMPILE)pahole,pahole)
RESOLVE_BTFIDS = $(objtree)/tools/bpf/resolve_btfids/resolve_btfids
LEX = flex
YACC = bison
diff --git a/scripts/dummy-tools/pahole b/scripts/dummy-tools/pahole
new file mode 100755
index 000000000000..53501a36fa71
--- /dev/null
+++ b/scripts/dummy-tools/pahole
@@ -0,0 +1,4 @@
+#!/bin/sh
+# SPDX-License-Identifier: GPL-2.0-only
+
+echo v99.99
--
2.35.2
On Thu, Apr 14, 2022 at 6:14 PM Jiri Slaby <jslaby@suse.cz> wrote: > > CONFIG_PAHOLE_VERSION is a part of a config since the commit below. And > when multiple people update the config, this value constantly changes. > Even if they use dummy scripts. > > To fix this: > * add a pahole dummy script returning v99.99 -> 9999 > * call it in Makefile taking CROSS_COMPILE into account. > > The latter happens only if $(CROSS_COMPILE)pahole really exists. This is > because a cross pahole likely exists only in dummy tools now, not in > real cross tools. I do not think this is the right thing to do. (As I said somewhere, I am opposed to checking pahole version in Kconfig). Also, $(CROSS_COMPILE)pahole looks insane. You can create a dummy pahole in your local system. $ echo 'echo v99.99' > $HOME/bin/dummy-pahole $ chmod +x $HOME/bin/dummy-pahole $ make CROSS_COMPILE=scripts/dummy-tools PAHOLE=dummy-pahole menuconfig > Fixes: 613fe1692377 (kbuild: Add CONFIG_PAHOLE_VERSION) > Cc: Masahiro Yamada <masahiroy@kernel.org> > Cc: Michal Marek <michal.lkml@markovi.net> > Cc: Nick Desaulniers <ndesaulniers@google.com> > Cc: linux-kbuild@vger.kernel.org > Signed-off-by: Jiri Slaby <jslaby@suse.cz> > --- > Makefile | 2 +- > scripts/dummy-tools/pahole | 4 ++++ > 2 files changed, 5 insertions(+), 1 deletion(-) > create mode 100755 scripts/dummy-tools/pahole > > diff --git a/Makefile b/Makefile > index ecbd42f3451a..2ef722ba0a41 100644 > --- a/Makefile > +++ b/Makefile > @@ -502,7 +502,7 @@ RUSTFMT = rustfmt > CLIPPY_DRIVER = clippy-driver > BINDGEN = bindgen > CARGO = cargo > -PAHOLE = pahole > +PAHOLE = $(if $(wildcard $(CROSS_COMPILE)pahole),$(CROSS_COMPILE)pahole,pahole) > RESOLVE_BTFIDS = $(objtree)/tools/bpf/resolve_btfids/resolve_btfids > LEX = flex > YACC = bison > diff --git a/scripts/dummy-tools/pahole b/scripts/dummy-tools/pahole > new file mode 100755 > index 000000000000..53501a36fa71 > --- /dev/null > +++ b/scripts/dummy-tools/pahole > @@ -0,0 +1,4 @@ > +#!/bin/sh > +# SPDX-License-Identifier: GPL-2.0-only > + > +echo v99.99 > -- > 2.35.2 > -- Best Regards Masahiro Yamada
On 14. 04. 22, 11:33, Masahiro Yamada wrote: > On Thu, Apr 14, 2022 at 6:14 PM Jiri Slaby <jslaby@suse.cz> wrote: >> >> CONFIG_PAHOLE_VERSION is a part of a config since the commit below. And >> when multiple people update the config, this value constantly changes. >> Even if they use dummy scripts. >> >> To fix this: >> * add a pahole dummy script returning v99.99 -> 9999 >> * call it in Makefile taking CROSS_COMPILE into account. >> >> The latter happens only if $(CROSS_COMPILE)pahole really exists. This is >> because a cross pahole likely exists only in dummy tools now, not in >> real cross tools. > > > I do not think this is the right thing to do. > > (As I said somewhere, I am opposed to checking pahole version in Kconfig). If you ask me, I am all for removal as this causes pain. But it's there, so I cannot do anything about that. > Also, $(CROSS_COMPILE)pahole looks insane. > > You can create a dummy pahole in your local system. > > $ echo 'echo v99.99' > $HOME/bin/dummy-pahole > $ chmod +x $HOME/bin/dummy-pahole > $ make CROSS_COMPILE=scripts/dummy-tools PAHOLE=dummy-pahole menuconfig Well, the question is how do I that for every kernel developer in SUSE? thanks, -- js suse labs
On 14. 04. 22, 11:42, Jiri Slaby wrote: > On 14. 04. 22, 11:33, Masahiro Yamada wrote: >> On Thu, Apr 14, 2022 at 6:14 PM Jiri Slaby <jslaby@suse.cz> wrote: >>> >>> CONFIG_PAHOLE_VERSION is a part of a config since the commit below. And >>> when multiple people update the config, this value constantly changes. >>> Even if they use dummy scripts. >>> >>> To fix this: >>> * add a pahole dummy script returning v99.99 -> 9999 >>> * call it in Makefile taking CROSS_COMPILE into account. >>> >>> The latter happens only if $(CROSS_COMPILE)pahole really exists. This is >>> because a cross pahole likely exists only in dummy tools now, not in >>> real cross tools. >> >> >> I do not think this is the right thing to do. >> >> (As I said somewhere, I am opposed to checking pahole version in >> Kconfig). > > If you ask me, I am all for removal as this causes pain. But it's there, > so I cannot do anything about that. > >> Also, $(CROSS_COMPILE)pahole looks insane. >> >> You can create a dummy pahole in your local system. >> >> $ echo 'echo v99.99' > $HOME/bin/dummy-pahole >> $ chmod +x $HOME/bin/dummy-pahole >> $ make CROSS_COMPILE=scripts/dummy-tools PAHOLE=dummy-pahole menuconfig > > Well, the question is how do I that for every kernel developer in SUSE? IOW it'd be quite easier if the scripts/dummy-tools/pahole part of the patch was in the tree. (I don't insist on the Makefile change.) > thanks,-- js suse labs
On Thu, Apr 14, 2022 at 6:44 PM Jiri Slaby <jslaby@suse.cz> wrote: > > On 14. 04. 22, 11:42, Jiri Slaby wrote: > > On 14. 04. 22, 11:33, Masahiro Yamada wrote: > >> On Thu, Apr 14, 2022 at 6:14 PM Jiri Slaby <jslaby@suse.cz> wrote: > >>> > >>> CONFIG_PAHOLE_VERSION is a part of a config since the commit below. And > >>> when multiple people update the config, this value constantly changes. > >>> Even if they use dummy scripts. > >>> > >>> To fix this: > >>> * add a pahole dummy script returning v99.99 -> 9999 > >>> * call it in Makefile taking CROSS_COMPILE into account. > >>> > >>> The latter happens only if $(CROSS_COMPILE)pahole really exists. This is > >>> because a cross pahole likely exists only in dummy tools now, not in > >>> real cross tools. > >> > >> > >> I do not think this is the right thing to do. > >> > >> (As I said somewhere, I am opposed to checking pahole version in > >> Kconfig). > > > > If you ask me, I am all for removal as this causes pain. But it's there, > > so I cannot do anything about that. > > > >> Also, $(CROSS_COMPILE)pahole looks insane. > >> > >> You can create a dummy pahole in your local system. > >> > >> $ echo 'echo v99.99' > $HOME/bin/dummy-pahole > >> $ chmod +x $HOME/bin/dummy-pahole > >> $ make CROSS_COMPILE=scripts/dummy-tools PAHOLE=dummy-pahole menuconfig > > > > Well, the question is how do I that for every kernel developer in SUSE? > > IOW it'd be quite easier if the scripts/dummy-tools/pahole part of the > patch was in the tree. (I don't insist on the Makefile change.) I do not mind scripts/dummy-tools/pahole although you need to do make CROSS_COMPILE=scripts/dummy-tools PAHOLE=scripts/dummy-tools/pahole menuconfig > > thanks,-- > js > suse labs -- Best Regards Masahiro Yamada
On 14. 04. 22, 17:18, Masahiro Yamada wrote: >>> Well, the question is how do I that for every kernel developer in SUSE? >> >> IOW it'd be quite easier if the scripts/dummy-tools/pahole part of the >> patch was in the tree. (I don't insist on the Makefile change.) > > > I do not mind scripts/dummy-tools/pahole Perfect! > although you need to do > make CROSS_COMPILE=scripts/dummy-tools > PAHOLE=scripts/dummy-tools/pahole menuconfig That's easy -- the developers use a script that I can modify. (Oppositng to writing files to their homes etc.) Will send a v2. thanks, -- js suse labs
© 2016 - 2026 Red Hat, Inc.