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 <[email protected]>
Cc: Michal Marek <[email protected]>
Cc: Nick Desaulniers <[email protected]>
Cc: [email protected]
Signed-off-by: Jiri Slaby <[email protected]>
---
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:42, Jiri Slaby wrote:
> On 14. 04. 22, 11:33, Masahiro Yamada wrote:
>> On Thu, Apr 14, 2022 at 6:14 PM Jiri Slaby <[email protected]> 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:14 PM Jiri Slaby <[email protected]> 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 <[email protected]>
> Cc: Michal Marek <[email protected]>
> Cc: Nick Desaulniers <[email protected]>
> Cc: [email protected]
> Signed-off-by: Jiri Slaby <[email protected]>
> ---
> 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 <[email protected]> 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 Thu, Apr 14, 2022 at 6:44 PM Jiri Slaby <[email protected]> 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 <[email protected]> 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