> -----Original Message----- > From: Song Liu <songliubrav...@fb.com> > Sent: Tuesday, November 10, 2020 5:05 PM > To: Andrii Nakryiko <and...@kernel.org> > Cc: bpf <b...@vger.kernel.org>; Networking <netdev@vger.kernel.org>; > Starovoitov, Alexei <a...@fb.com>; Daniel Borkmann <dan...@iogearbox.net>; > Kernel Team <kernel-t...@fb.com>; open list <linux- > ker...@vger.kernel.org>; raf...@kernel.org; j...@kernel.org; Arnaldo > Carvalho de Melo <a...@redhat.com>; Greg Kroah-Hartman > <gre...@linuxfoundation.org>; Masahiro Yamada > <yamada.masah...@socionext.com> > Subject: Re: [PATCH v4 bpf-next 3/5] kbuild: build kernel module BTFs if BTF > is > enabled and pahole supports it > > > > > On Nov 9, 2020, at 5:19 PM, Andrii Nakryiko <and...@kernel.org> wrote: > > [...] > > > SPLIT BTF > > ========= > > > > $ for f in $(find . -name '*.ko'); do size -A -d $f | grep BTF | awk > > '{print $2}'; > done | awk '{ s += $1 } END { print s }' > > 5194047 > > > > $ for f in $(find . -name '*.ko'); do printf "%s %d\n" $f $(size -A -d $f | > > grep > BTF | awk '{print $2}'); done | sort -nr -k2 | head -n10 > > ./drivers/gpu/drm/i915/i915.ko 293206 > > ./drivers/gpu/drm/radeon/radeon.ko 282103 > > ./fs/xfs/xfs.ko 222150 > > ./drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko 198503 > > ./drivers/infiniband/hw/mlx5/mlx5_ib.ko 198356 > > ./drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko 113444 > > ./fs/cifs/cifs.ko 109379 > > ./arch/x86/kvm/kvm.ko 100225 > > ./drivers/gpu/drm/drm.ko 94827 > > ./drivers/infiniband/core/ib_core.ko 91188 > > > > Cc: Masahiro Yamada <yamada.masah...@socionext.com> > > Signed-off-by: Andrii Nakryiko <and...@kernel.org> > > Acked-by: Song Liu <songliubrav...@fb.com>
This change, commit 5f9ae91f7c0d ("kbuild: Build kernel module BTFs if BTF is enabled and pahole supports it") currently in net-next, linux-next, etc. breaks the use-case of compiling only a specific kernel module (both in-tree and out-of-tree, e.g. 'make M=drivers/net/ethernet/intel/ice') after first doing a 'make modules_prepare'. Previously, that use-case would result in a warning noting "Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped" but now it errors out after noting "No rule to make target 'vmlinux', needed by '<...>.ko'. Stop." Is that intentional? Thanks, Bruce.