diff mbox series

[1/2] kbuild: dummy-tools: Add elfedit.

Message ID f6218ac526a04fa4d4406f935bcc4eb4a7df65c4.1617917438.git.msuchanek@suse.de (mailing list archive)
State New
Headers show
Series [1/2] kbuild: dummy-tools: Add elfedit. | expand

Commit Message

Michal Suchánek April 8, 2021, 9:31 p.m. UTC
elfedit is used in Makefile

 Makefile:GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))

which causes this error getting printed

 which: no elfedit in (./scripts/dummy-tools)

Add elfedit to dummy-tools to avoid this error.

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
---
 scripts/dummy-tools/elfedit | 1 +
 1 file changed, 1 insertion(+)
 create mode 120000 scripts/dummy-tools/elfedit

Comments

Masahiro Yamada April 10, 2021, 6:12 p.m. UTC | #1
On Fri, Apr 9, 2021 at 6:31 AM Michal Suchanek <msuchanek@suse.de> wrote:
>
> elfedit is used in Makefile
>
>  Makefile:GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
>
> which causes this error getting printed
>
>  which: no elfedit in (./scripts/dummy-tools)


I am OK with this patch, but how did you reproduce it?




>
> Add elfedit to dummy-tools to avoid this error.
>
> Signed-off-by: Michal Suchanek <msuchanek@suse.de>
> ---
>  scripts/dummy-tools/elfedit | 1 +
>  1 file changed, 1 insertion(+)
>  create mode 120000 scripts/dummy-tools/elfedit
>
> diff --git a/scripts/dummy-tools/elfedit b/scripts/dummy-tools/elfedit
> new file mode 120000
> index 000000000000..c0648b38dd42
> --- /dev/null
> +++ b/scripts/dummy-tools/elfedit
> @@ -0,0 +1 @@
> +ld
> \ No newline at end of file
> --
> 2.26.2
>
Michal Suchánek April 11, 2021, 10:18 a.m. UTC | #2
On Sun, Apr 11, 2021 at 03:12:40AM +0900, Masahiro Yamada wrote:
> On Fri, Apr 9, 2021 at 6:31 AM Michal Suchanek <msuchanek@suse.de> wrote:
> >
> > elfedit is used in Makefile
> >
> >  Makefile:GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
> >
> > which causes this error getting printed
> >
> >  which: no elfedit in (./scripts/dummy-tools)
> 
> 
> I am OK with this patch, but how did you reproduce it?

make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig

it possibly depends on the config you already have, too.

Thanks

Michal
Masahiro Yamada April 11, 2021, 11:37 a.m. UTC | #3
On Sun, Apr 11, 2021 at 7:18 PM Michal Suchánek <msuchanek@suse.de> wrote:
>
> On Sun, Apr 11, 2021 at 03:12:40AM +0900, Masahiro Yamada wrote:
> > On Fri, Apr 9, 2021 at 6:31 AM Michal Suchanek <msuchanek@suse.de> wrote:
> > >
> > > elfedit is used in Makefile
> > >
> > >  Makefile:GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
> > >
> > > which causes this error getting printed
> > >
> > >  which: no elfedit in (./scripts/dummy-tools)
> >
> >
> > I am OK with this patch, but how did you reproduce it?
>
> make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig
>
> it possibly depends on the config you already have, too.
>
> Thanks
>
> Michal


Maybey, are you working on linux-next?


[1]
$ git checkout  add74f8473^
$ make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig

[2]
$ git checkout  add74f8473
$ make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig



If [1] is OK, but [2] is NG,
commit add74f8473 is the root cause.

At least, I do not think this would happen
in the mainline kernel.
Michal Suchánek April 11, 2021, 8:03 p.m. UTC | #4
On Sun, Apr 11, 2021 at 08:37:03PM +0900, Masahiro Yamada wrote:
> On Sun, Apr 11, 2021 at 7:18 PM Michal Suchánek <msuchanek@suse.de> wrote:
> >
> > On Sun, Apr 11, 2021 at 03:12:40AM +0900, Masahiro Yamada wrote:
> > > On Fri, Apr 9, 2021 at 6:31 AM Michal Suchanek <msuchanek@suse.de> wrote:
> > > >
> > > > elfedit is used in Makefile
> > > >
> > > >  Makefile:GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
> > > >
> > > > which causes this error getting printed
> > > >
> > > >  which: no elfedit in (./scripts/dummy-tools)
> > >
> > >
> > > I am OK with this patch, but how did you reproduce it?
> >
> > make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig
> >
> > it possibly depends on the config you already have, too.
> >
> > Thanks
> >
> > Michal
> 
> 
> Maybey, are you working on linux-next?

Yes, I do have the rust support.

> 
> 
> [1]
> $ git checkout  add74f8473^
> $ make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig
> 
> [2]
> $ git checkout  add74f8473
> $ make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig
> 
> 
> 
> If [1] is OK, but [2] is NG,
> commit add74f8473 is the root cause.

Sounds like it. Before that the elfedit test was conditional on clang.

I can try to do the bisect but I think the reason it broke is quite
clear.

Thanks

Michal
Michal Suchánek April 12, 2021, 12:46 p.m. UTC | #5
On Sun, Apr 11, 2021 at 08:37:03PM +0900, Masahiro Yamada wrote:
> On Sun, Apr 11, 2021 at 7:18 PM Michal Suchánek <msuchanek@suse.de> wrote:
> >
> > On Sun, Apr 11, 2021 at 03:12:40AM +0900, Masahiro Yamada wrote:
> > > On Fri, Apr 9, 2021 at 6:31 AM Michal Suchanek <msuchanek@suse.de> wrote:
> > > >
> > > > elfedit is used in Makefile
> > > >
> > > >  Makefile:GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
> > > >
> > > > which causes this error getting printed
> > > >
> > > >  which: no elfedit in (./scripts/dummy-tools)
> > >
> > >
> > > I am OK with this patch, but how did you reproduce it?
> >
> > make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig
> >
> > it possibly depends on the config you already have, too.
> >
> > Thanks
> >
> > Michal
> 
> 
> Maybey, are you working on linux-next?
> 
> 
> [1]
> $ git checkout  add74f8473^
> $ make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig
> 
> [2]
> $ git checkout  add74f8473
> $ make ARCH=arm CROSS_COMPILE=scripts/dummy-tools/ allmodconfig

Indeed, the rust support is the cause of the issue:

add74f8473c5ca7d8947c760ff355df991a259bb (HEAD) Rust support
0d02ec6b3136c73c09e7859f0d0e4e2c4c07b49b (tag: v5.12-rc4, s390/master,
s390/linux/master) Linux 5.12-rc4

While v5.12-rc4 is OK add74f8473 produces the error.

There is additional issue that I noticed: dummy tools does not work
seamlessly with O=

$ make CROSS_COMPILE=$(pwd)/scripts/dummy-tools/ O=/scratch/ppc64/ V=1 ARCH=powerpc allmodconfig > /dev/null
which: no elfedit in (/home/michal/linux-2.6/scripts/dummy-tools)

$ make CROSS_COMPILE=scripts/dummy-tools/ O=/scratch/ppc64/ V=1 ARCH=powerpc allmodconfig > /dev/null
which: no elfedit in (./scripts/dummy-tools)
scripts/Kconfig.include:39: compiler 'scripts/dummy-tools/gcc' not found
make[2]: *** [/home/michal/linux-2.6/scripts/kconfig/Makefile:63:
allmodconfig] Error 1
make[1]: *** [/home/michal/linux-2.6/Makefile:636: allmodconfig] Error 2
make: *** [Makefile:222: __sub-make] Error 2

Perhaps linking dummy-tools into the target directory would be a good
idea?

Thanks

Michal
Miguel Ojeda April 16, 2021, 7:22 p.m. UTC | #6
On Sun, Apr 11, 2021 at 11:27 PM Michal Suchánek <msuchanek@suse.de> wrote:
>
> Yes, I do have the rust support.

I applied your patch in rust-next and it is in the latest linux-next,
let me know if that helped.

Masahiro, if you want to apply it on your side, just let me know!

Cheers,
Miguel
diff mbox series

Patch

diff --git a/scripts/dummy-tools/elfedit b/scripts/dummy-tools/elfedit
new file mode 120000
index 000000000000..c0648b38dd42
--- /dev/null
+++ b/scripts/dummy-tools/elfedit
@@ -0,0 +1 @@ 
+ld
\ No newline at end of file