From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 270D6C43219 for ; Wed, 19 Oct 2022 09:05:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232132AbiJSJFN (ORCPT ); Wed, 19 Oct 2022 05:05:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232529AbiJSJEa (ORCPT ); Wed, 19 Oct 2022 05:04:30 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04923AC3B6; Wed, 19 Oct 2022 01:57:58 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id BA2176186B; Wed, 19 Oct 2022 08:56:46 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 677B2C433D7; Wed, 19 Oct 2022 08:56:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1666169806; bh=FHplcX8F9FjqJEVgQ0myqZXIIqUdUA+fWPAh3k3STBI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nMbc1Id9QkMtEDL5f3VdQu/JF7COp9SBHborA0lIktnilsvzVRFJ2Aa2Go55ZLjlq 5wpm3b6BQEdKwAA+VccyvB6sH3zTsAgQVPWFR4DSHZRarpWweRlIHiZInteaJmB2oN qD2CACWFrarMmgdVuMFy7N7GGG3pY0r2wi6CF+cNjOGbF2b0vgiZkMEkgbFd7FK0XN 9T88abcmWKhoph3awtxGLOrG8gFjFbrVpOVVj4owi5JQqPDvio8rPMSmbeRNbfii+e EEH9xrecU681XGCHWAOf3t+wAuvU4oSgjvFUM6tcxludwucvagDTMIj2y+VbT8zFXY u+gmnnkukgogA== From: Jiri Olsa To: stable@vger.kernel.org Cc: Mel Gorman , Arnaldo Carvalho de Melo , Hao Luo , Michal Suchanek , bpf@vger.kernel.org, Arnaldo Carvalho de Melo , Daniel Borkmann , Martin Rodriguez Reboredo , Andrii Nakryiko , Javier Martinez Canillas , Ilya Leoshkevich , Nathan Chancellor , =?UTF-8?q?Philip=20M=C3=BCller?= Subject: [PATCH stable 5.10 3/5] kbuild: skip per-CPU BTF generation for pahole v1.18-v1.21 Date: Wed, 19 Oct 2022 10:56:02 +0200 Message-Id: <20221019085604.1017583-4-jolsa@kernel.org> X-Mailer: git-send-email 2.37.3 In-Reply-To: <20221019085604.1017583-1-jolsa@kernel.org> References: <20221019085604.1017583-1-jolsa@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org From: Andrii Nakryiko commit a0b8200d06ad6450c179407baa5f0f52f8cfcc97 upstream. [small context changes due to missing floats support in 5.10] Commit "mm/page_alloc: convert per-cpu list protection to local_lock" will introduce a zero-sized per-CPU variable, which causes pahole to generate invalid BTF. Only pahole versions 1.18 through 1.21 are impacted, as before 1.18 pahole doesn't know anything about per-CPU variables, and 1.22 contains the proper fix for the issue. Luckily, pahole 1.18 got --skip_encoding_btf_vars option disabling BTF generation for per-CPU variables in anticipation of some unanticipated problems. So use this escape hatch to disable per-CPU var BTF info on those problematic pahole versions. Users relying on availability of per-CPU var BTFs would need to upgrade to pahole 1.22+, but everyone won't notice any regressions. Link: https://lkml.kernel.org/r/20210530002536.3193829-1-andrii@kernel.org Signed-off-by: Andrii Nakryiko Acked-by: Mel Gorman Cc: Arnaldo Carvalho de Melo Cc: Hao Luo Cc: Michal Suchanek Cc: Jiri Olsa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds Signed-off-by: Jiri Olsa --- scripts/link-vmlinux.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 72bf14df6903..bbb22be4c8f1 100755 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh @@ -161,6 +161,11 @@ gen_btf() vmlinux_link ${1} + if [ "${pahole_ver}" -ge "118" ] && [ "${pahole_ver}" -le "121" ]; then + # pahole 1.18 through 1.21 can't handle zero-sized per-CPU vars + extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_vars" + fi + info "BTF" ${2} LLVM_OBJCOPY="${OBJCOPY}" ${PAHOLE} -J ${extra_paholeopt} ${1} -- 2.37.3