From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dy1-f179.google.com (mail-dy1-f179.google.com [74.125.82.179]) (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 86E8D33508E for ; Tue, 24 Mar 2026 20:21:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774383695; cv=none; b=NtcQWDzTw3uaodDX9Ziv92kYZEIJiqRavxTfCv5AqoybH0sZM7LmTrKeG9S3JbGM8Vd7K2OesodYaROJ5qar0ePZg7VLRcw7RDd5qCb2p3MdXLDpqiE/IyP4NLMVl/Ku6BSHbyJ1oAZDfntnxH7NLhBb78BVOkTV8rDZ3BDdFhE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774383695; c=relaxed/simple; bh=YekaUXXUymXZs/3g2Vp+S0NZBc707UWzjqqiXrrBWgU=; h=Message-ID:Subject:From:To:Cc:Date:In-Reply-To:References: Content-Type:MIME-Version; b=Y1toIE52QjJJqxzkgMrMTkYgSyizi6Z3gziuy5Umbdg/1lXOyI5ziwmMfCTi5jKOxyQhJRHEua1n5FZO9Z/eB6m7AUHRLunQSb7MzHQhCVif5P1PNNt4bxG4wGRa2bXXvCfSPfF34L8iQyGs0Pgyu8XJwK0TiO/ACKHMYg+l+so= 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=Ruc37CfH; arc=none smtp.client-ip=74.125.82.179 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="Ruc37CfH" Received: by mail-dy1-f179.google.com with SMTP id 5a478bee46e88-2c0ecaae7dfso9525014eec.1 for ; Tue, 24 Mar 2026 13:21:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774383694; x=1774988494; darn=vger.kernel.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=YekaUXXUymXZs/3g2Vp+S0NZBc707UWzjqqiXrrBWgU=; b=Ruc37CfHS+B/+pv/hj0IEwYVhZcTJF25K97i2ijyp8k8T9wgtOHEJWnhGA6LPFioKB 5ApXWklgKgV3osabwatO7QT/FkFdJw5JXH9gzmfPHPv+7992PyU4seEQsuxiqmm6O3Ny ozGbPB3w/MTOHQ7qKzOtVkayWp3vWo5xg+SWH7kLpPJxXZjJGXmgc9J+kzgEg0m9pNu+ uhOCmBEAGSsXwAh+EQSXcYeoPOLCipDYV2ljD6A/z7iBgmqzpf2dAWVmIRx0KRd3fJ+j rcFsBooHKMuL7kaVk1z0tZLBuQLMHJ839PuTmWLa11xePpcRHP6Wjff642o7z3nhp6wp mbqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774383694; x=1774988494; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=YekaUXXUymXZs/3g2Vp+S0NZBc707UWzjqqiXrrBWgU=; b=NpUfIbrYGb00dCKgjlZNRvuHebjj2pVLo4hjT/mlwtu6cBDN6Dw1FRRB+0wQRkRDpE w2M7Z23QSGdyxy7jNZ13FqvZjl12QiUfZEoGZoCFpQEq/F8oCFuYKUJXSNzD9Je93GrK AS0h/iyL+x+yYuxP5AWpK51iqo3M2e7+9bwDdWLkV9ocKjxl/xMOrcQ19cxzjuK5nvPo BehF85e7J2ZHrPtzEL4ZoLN4BNkbdLigGyGhH+fFEpKBdSnKhZGyTzJBtI0K0DT06vom M5WJrGQSYVn3Z0FWzz4vMr5eUtwacEcK23bvAFrv2nap9NMkijVsvgBuAtSnN2tIzX2A OUgA== X-Forwarded-Encrypted: i=1; AJvYcCXAb53Mfua7s2KUFuTEGXqMheJnxVCNqcZ5LkldkVaQRo0CfVhZnD89BKPdbLhhTkYLotjf7p93W2yvaSU=@vger.kernel.org X-Gm-Message-State: AOJu0YxBgDlfzbWZM/PXzMhmRqgPuQrdzsTdukA0pGWg/P5IRFfin0wO PODTj80Jj9MG0lM9Ohk8xJtu7e11PCf4sBRBXeCkUg/KxwwdIyntmoGo X-Gm-Gg: ATEYQzxakb1JXnIj7U8dLXvyXfwh0bi094zoprta2amrZ2bd7jAxhoKhOKzVDId1AOF KPqv3S7sOkxogEh5tSyoZR/HMIkATf5aNoBPLQExsOKtV9a7VIUhbuBufRGIUzPibQC58F475X4 LHm68zPD9Qa+nCvVSa6/ix8IwIel867DhMySARSzRn0iFKwT1ApjeUl47TAvC8EEJ/mzoJ+C4KS c0wkFRjpJUWIjnS5eo2w4a+jWOCQowcfrijWfm1ogviFV4G9LxqV1VRwiJi7bh2rRwTEa1nX336 NDcy20sqxN5t4c5P+6V0L9zr0t+h9/BoVY9RCWoz6KIKP+pnHt3wtn2ooCSZ6QFx0Mavdzpyw7V M8H8amao2vpG+uO5Szpc0mDwfEdT9TqpKQaYOygOUHU8nFt1jRtdSRrg/b27Zesr9RGmCiURa6D GNZ05BXAizrt8LIA6hnp400kUpdm9639YfVgTlMPySeRw1e7wn/ej2Y5FGBxNVZSgDKfnHnEQNG Z1stA== X-Received: by 2002:a05:7301:4e0b:b0:2c1:4b1d:a472 with SMTP id 5a478bee46e88-2c15d3fb1e1mr395106eec.29.1774383693468; Tue, 24 Mar 2026 13:21:33 -0700 (PDT) Received: from ?IPv6:2a03:83e0:115c:1:41fb:8dcd:b77b:d6ce? ([2620:10d:c090:500::bed7]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2c10b2ce04asm16295986eec.21.2026.03.24.13.21.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Mar 2026 13:21:32 -0700 (PDT) Message-ID: <1de9261a98d6e4041ad2e99c745fd6be0831a492.camel@gmail.com> Subject: Re: [PATCH bpf-next v6 1/2] bpf: Support pointer param types via SCALAR_VALUE for trampolines From: Eduard Zingerman To: Slava Imameev , ast@kernel.org, daniel@iogearbox.net, andrii@kernel.org Cc: martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, john.fastabend@gmail.com, kpsingh@kernel.org, sdf@fomichev.me, haoluo@google.com, jolsa@kernel.org, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, horms@kernel.org, shuah@kernel.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, netdev@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-open-source@crowdstrike.com Date: Tue, 24 Mar 2026 13:21:29 -0700 In-Reply-To: <20260314082127.7939-2-slava.imameev@crowdstrike.com> References: <20260314082127.7939-1-slava.imameev@crowdstrike.com> <20260314082127.7939-2-slava.imameev@crowdstrike.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.58.3 (3.58.3-1.fc43) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 On Sat, 2026-03-14 at 19:21 +1100, Slava Imameev wrote: > Add BPF verifier support for single- and multi-level pointer > parameters and return values in BPF trampolines by treating these > parameters as SCALAR_VALUE. >=20 > This extends the existing support for int and void pointers that are > already treated as SCALAR_VALUE. >=20 > This provides consistent logic for single and multi-level pointers: > if a type is treated as SCALAR for a single-level pointer, the same > applies to multi-level pointers. The exception is pointer-to-struct, > which is currently PTR_TO_BTF_ID for single-level but treated as > scalar for multi-level pointers since the verifier lacks context > to infer the size of target memory regions. >=20 > Safety is ensured by existing BTF verification, which rejects invalid > pointer types at the BTF verification stage. >=20 > Signed-off-by: Slava Imameev > --- Acked-by: Eduard Zingerman [...]