Message ID | 20220414091419.7654-1-jslaby@suse.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | scripts: dummy-tools, add pahole | expand |
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 >
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,
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
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,
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
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