Re: Fwd: stable kernels 6.6.23 and 6.1.83 fails to build: error: unknown type name 'u32'

From: Alexei Starovoitov
Date: Mon Apr 01 2024 - 11:10:04 EST


On Mon, Apr 1, 2024 at 7:26 AM Bagas Sanjaya <bagasdotme@xxxxxxxxx> wrote:
>
> On Mon, Apr 01, 2024 at 04:15:25PM +0200, Greg KH wrote:
> > On Mon, Apr 01, 2024 at 09:09:55PM +0700, Bagas Sanjaya wrote:
> > > Hi,
> > >
> > > On Bugzilla, ncopa@xxxxxxxxxxxxxxx reported resolve_btfids FTBFS regression
> > > on musl system [1]:
> > >
> > > > The latest releases fails to build with musl libc (Alpine Linux edge and v3.19):
> > > >
> > > > ```
> > > > rm -f -f /home/ncopa/aports/main/linux-lts/src/build-lts.x86_64/tools/bpf/resolve_btfids/libbpf/libbpf.a; ar rcs /home/ncopa/aports/main/linux-lts/src/build-lts.x86_64/tool
> > > > s/bpf/resolve_btfids/libbpf/libbpf.a /home/ncopa/aports/main/linux-lts/src/build-lts.x86_64/tools/bpf/resolve_btfids/libbpf/staticobjs/libbpf-in.o
> > > > In file included from main.c:73:
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:7:9: error: unknown type name 'u32'
> > > > 7 | u32 cnt;
> > > > | ^~~
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:8:9: error: unknown type name 'u32'
> > > > 8 | u32 ids[];
> > > > | ^~~
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:12:9: error: unknown type name 'u32'
> > > > 12 | u32 cnt;
> > > > | ^~~
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:13:9: error: unknown type name 'u32'
> > > > 13 | u32 flags;
> > > > | ^~~
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:15:17: error: unknown type name 'u32'
> > > > 15 | u32 id;
> > > > | ^~~
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:16:17: error: unknown type name 'u32'
> > > > 16 | u32 flags;
> > > > | ^~~
> > > > /home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/include/linux/btf_ids.h:215:8: error: unknown type name 'u32'
> > > > 215 | extern u32 btf_tracing_ids[];
> > > > | ^~~
> > > > make[4]: *** [/home/ncopa/aports/main/linux-lts/src/linux-6.6/tools/build/Makefile.build:98: /home/ncopa/aports/main/linux-lts/src/build-lts.x86_64/tools/bpf/resolve_btfids
> > > > /main.o] Error 1
> > > > make[4]: *** Waiting for unfinished jobs....

> > > > make[3]: *** [Makefile:83: /home/ncopa/aports/main/linux-lts/src/build-lts.x86_64/tools/bpf/resolve_btfids//resolve_btfids-in.o] Error 2
> > > > make[2]: *** [Makefile:76: bpf/resolve_btfids] Error 2
> > > > make[1]: *** [/home/ncopa/aports/main/linux-lts/src/linux-6.6/Makefile:1354: tools/bpf/resolve_btfids] Error 2
> > > > make: *** [/home/ncopa/aports/main/linux-lts/src/linux-6.6/Makefile:234: __sub-make] Error 2
> > > > ```
> > >
> > > Bisection led to upstream commit 9707ac4fe2f5ba ("tools/resolve_btfids:
> > > Refactor set sorting with types from btf_ids.h") as the culprit.
> > >
> > > See the report on Bugzilla for the full thread and proposed fix.
> >
> > Is the proposed fix a commit to backport?
>
> Nope (see below).

The fix is in bpf tree.
commit 62248b22d01e ("tools/resolve_btfids: fix build with musl libc")