From nobody Sun Apr 5 16:29:50 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 881703A758E for ; Tue, 24 Mar 2026 18:47:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774378045; cv=none; b=HbYD9vZPjwr5N7vQLRwsngyxCS068ZCGZVrGVhnssnOxTnORHSJ/mA8PWjBPrdV282buPUvEKv5gZKke1QKbN0dqOtN4iaRDWjO/a4v54OH8tUUei/54uDtL5bM4pHC99TDMh2lxE76TtFfc0wNtaYOe7W01AeVcUUeJwyywFP8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774378045; c=relaxed/simple; bh=53FtnsCuM4e6/5F3bf619l1FA5IlHw/iDpC6DaQWCI4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PWotogluV2JbNUyJrH0Adypafngj+FLWaNHxxx+ClJFM2G1yaskf+aJKjhyBxBthDaQbfB6ef9BSK/1oKFgFezKp2tUxmyxZSELzT3DhLcKHZF12EfyBUKmtOdmASZan/2efuFAL57jqZJuCRs4UTq5y/mNSMaOpbW8ZqdF1WXA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ozTA+Dht; arc=none smtp.client-ip=209.85.214.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ozTA+Dht" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-2ad4d639db3so19396685ad.0 for ; Tue, 24 Mar 2026 11:47:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774378044; x=1774982844; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+EEDLAzRE9U1qCNYBdZlpQSbdmAzEh2YrqmR/0ul8nw=; b=ozTA+DhtlLLiqEwYoxl6OOqJ8PdTG6/M4Tw1JdPkrAWKXWBqMw3u78nfakPHlA+v6U D8naOwk1ALlyfmNt96IkiL0hiMg7Z9Hy9VeWJTPQ2QeAtkWbsYJ297CIw8RcRVrd56st Jm6DEwa1s8ZVM/hnRfMOJ30+V2zC5WmO8ZAbRuEnh6W95AL99yYkMwGYcaQ8xEW83Jtg MwWeLQm1MnzVlSOAL+QGDKFQyB9yWLCsFHEnu/QiV+IvieMFoq1avjEqxtqwZkqgLBWK QsLQffHFnbbU2mVbjuARZOW5fJOsLbXJ5Ekuw743VQE3FwmSp3wkz8EGoL17jKp0koa4 BvPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774378044; x=1774982844; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=+EEDLAzRE9U1qCNYBdZlpQSbdmAzEh2YrqmR/0ul8nw=; b=s3BVsbnmW5kltKALry7a6Tq4L6FAyWhFtZ4JG6Gj7dc6GcI4EHzt/ssIVodvbYG928 5/ZLHFmCWo7laCDVQ4GBv+E+oLt3RqrM673S9JQW0kQ0bzvx3/we/TzklA+YYMwtaPYY Kt3YzCOsvDjK6/G1CZdgwILfueIHNCY0JZYOy2PPPwuWg6KHjkAGU7DplPEcvEmzU2ME IVRHANFCwoFFi4IquiH9LcNdhfCSTc+rt7ZB4lekcxQLn46qgfQ8FJ66lchlmpSkvZXx EVRcuUSqL1Id+KM0eg4ea8NeNLkokby0NnoTgwc17wnyDvUiMBtmTBjkdLpCOUbhIHJC BizQ== X-Forwarded-Encrypted: i=1; AJvYcCW94WavZO6yUkoJhHL4RYlOxX3so+2Gl0judY1wuk75RROV80TTuNSePRKdMs3Of55tV5qqv2D7xauyur8=@vger.kernel.org X-Gm-Message-State: AOJu0YymHKREnW1qrn/Rce5uninio1NVo0BvtrO+u3ozVZb3H7O1ryQ7 twHca+/0s1utw2DppRjgZW7hQZUGv7APcor94v2ISlzdoOrIAGBoTDtH X-Gm-Gg: ATEYQzzk3O47AlpHQ4VuZZan8XDN/0dNFBaNjtrsgy4rt7Ma2oTWE5mqeC1pWsWDwBJ yXeIg68dzzO4m809VJZy4imingqVYOawtejwHl6Z0vkdhKhSE5o/EXlPxDpMWae8nSvdkysCB4X uipARbd4bpMUcYrK53M9Dsjgf3iY+NmCIO6a4JN+wksRXnHzDgoviBLt2GmjdN0KGPhURYiPvYI bCHzn10k7+trG5J8pRxdVpQH66Mx6qw30+xH5DBF3XL9hYByRsiagY+TKrPycibrGKD8YOfZfiD yz8awueVwSyOmH7qWxMZpw1kGE73LMQNSkX6BG3pNaxi7URWS5EZcUaQzZKt/kfjJmNH3O86RRS NF03ktan9ULFzYz8mDFZmy98LxNMF6Fw28+JsQHldo+yV0wrNM+cBR3e7poB5ock/XzDffxFue3 3TXiEVNTJT81rRTLwplK5GgpzRDWeL96831qH+2JQhCDue5O6QjczfI0KDgqC1CY1FX4HXxdIld 6s= X-Received: by 2002:a17:902:f651:b0:2b0:6ce3:8f7 with SMTP id d9443c01a7336-2b0b0aead53mr6237685ad.43.1774378043889; Tue, 24 Mar 2026 11:47:23 -0700 (PDT) Received: from mi-HP-ProDesk-680-G6-PCI-Microtower-PC.mioffice.cn ([43.224.245.226]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b0a9801748sm36732975ad.17.2026.03.24.11.47.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Mar 2026 11:47:23 -0700 (PDT) From: zhidao su X-Google-Original-From: zhidao su To: linux-doc@vger.kernel.org Cc: corbet@lwn.net, linux-kernel@vger.kernel.org, sched-ext@lists.linux.dev, bpf@vger.kernel.org, alexei.starovoitov@gmail.com, tj@kernel.org, zhidao su Subject: [PATCH] docs: Raise minimum pahole version to 1.26 for KF_IMPLICIT_ARGS kfuncs Date: Wed, 25 Mar 2026 02:47:18 +0800 Message-ID: <20260324184718.3747428-1-suzhidao@xiaomi.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Since Linux 7.0, kfuncs annotated with KF_IMPLICIT_ARGS require pahole v1.26 or later. Without it, such kfuncs will have incorrect BTF prototypes in vmlinux, causing BPF programs to fail to load with a "func_proto incompatible with vmlinux" error. Many sched_ext kfuncs are affected (e.g. scx_bpf_create_dsq, scx_bpf_kick_cpu). The root cause: scripts/Makefile.btf passes --btf_features=3Ddecl_tag_kfuncs to pahole only when pahole >=3D 1.26. Without that flag, pahole emits no DECL_TAG BTF entries for __bpf_kfunc-annotated functions. As a result, resolve_btfids/main.c::collect_kfuncs() finds no bpf_kfunc DECL_TAGs, short-circuits at line 1002, and btf2btf() never creates the _impl variants or strips the implicit 'aux' argument from the visible proto. The vmlinux BTF retains the 3-param prototype while BPF programs declare the 2-param version, triggering the mismatch. Raise the minimum version in the requirements table from 1.22 to 1.26 and add a note explaining the failure mode, so users understand why their BPF programs fail on distributions shipping pahole v1.25 (e.g. Ubuntu 24.04 LTS). Suggested-by: Jonathan Corbet Signed-off-by: zhidao su --- Documentation/process/changes.rst | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Documentation/process/changes.rst b/Documentation/process/chan= ges.rst index 6b373e193548..02068d72a101 100644 --- a/Documentation/process/changes.rst +++ b/Documentation/process/changes.rst @@ -38,7 +38,7 @@ bash 4.2 bash --version binutils 2.30 ld -v flex 2.5.35 flex --version bison 2.0 bison --version -pahole 1.22 pahole --version +pahole 1.26 pahole --version util-linux 2.10o mount --version kmod 13 depmod -V e2fsprogs 1.41.4 e2fsck -V @@ -145,6 +145,11 @@ Since Linux 5.2, if CONFIG_DEBUG_INFO_BTF is selected,= the build system generates BTF (BPF Type Format) from DWARF in vmlinux, a bit later from ke= rnel modules as well. This requires pahole v1.22 or later. =20 +Since Linux 7.0, kfuncs annotated with KF_IMPLICIT_ARGS require pahole v1.= 26 +or later. Without it, such kfuncs will have incorrect BTF prototypes in +vmlinux, causing BPF programs to fail to load with a "func_proto incompati= ble +with vmlinux" error. Many sched_ext kfuncs are affected. + It is found in the 'dwarves' or 'pahole' distro packages or from https://fedorapeople.org/~acme/dwarves/. =20 --=20 2.43.0