{"id":2196367,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2196367/?format=json","project":{"id":46,"url":"http://patchwork.ozlabs.org/api/1.0/projects/46/?format=json","name":"Intel Wired Ethernet development","link_name":"intel-wired-lan","list_id":"intel-wired-lan.osuosl.org","list_email":"intel-wired-lan@osuosl.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260213-bpf-xdp-meta-rxcksum-v2-4-a82c4802afbe@kernel.org>","date":"2026-02-13T15:26:23","name":"[bpf-next,v2,4/5] selftests/bpf: Add selftest support for bpf_xdp_metadata_rx_checksum","commit_ref":null,"pull_url":null,"state":"handled-elsewhere","archived":false,"hash":"9600d2e778467ee65ffcc43c031b37baa32c69ca","submitter":{"id":76007,"url":"http://patchwork.ozlabs.org/api/1.0/people/76007/?format=json","name":"Lorenzo Bianconi","email":"lorenzo@kernel.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260213-bpf-xdp-meta-rxcksum-v2-4-a82c4802afbe@kernel.org/mbox/","series":[{"id":492113,"url":"http://patchwork.ozlabs.org/api/1.0/series/492113/?format=json","date":"2026-02-13T15:26:20","name":"Add the the capability to load HW RX checsum in eBPF programs","version":2,"mbox":"http://patchwork.ozlabs.org/series/492113/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2196367/checks/","tags":{},"headers":{"Return-Path":"<intel-wired-lan-bounces@osuosl.org>","X-Original-To":["incoming@patchwork.ozlabs.org","intel-wired-lan@lists.osuosl.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","intel-wired-lan@lists.osuosl.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=osuosl.org header.i=@osuosl.org header.a=rsa-sha256\n header.s=default header.b=oePI0PmN;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=140.211.166.137; helo=smtp4.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fCGHp19j5z1xvQ\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 14 Feb 2026 02:27:18 +1100 (AEDT)","from localhost (localhost [127.0.0.1])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 98CEF41CDC;\n\tFri, 13 Feb 2026 15:27:15 +0000 (UTC)","from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id iqzT6ouQgnBP; Fri, 13 Feb 2026 15:27:14 +0000 (UTC)","from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 3445C41CDD;\n\tFri, 13 Feb 2026 15:27:14 +0000 (UTC)","from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\n by lists1.osuosl.org (Postfix) with ESMTP id 0D04CEC\n for <intel-wired-lan@lists.osuosl.org>; Fri, 13 Feb 2026 15:27:13 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp4.osuosl.org (Postfix) with ESMTP id EF68740672\n for <intel-wired-lan@lists.osuosl.org>; Fri, 13 Feb 2026 15:27:12 +0000 (UTC)","from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id WtZJ1oY437GR for <intel-wired-lan@lists.osuosl.org>;\n Fri, 13 Feb 2026 15:27:12 +0000 (UTC)","from tor.source.kernel.org (tor.source.kernel.org\n [IPv6:2600:3c04:e001:324:0:1991:8:25])\n by smtp4.osuosl.org (Postfix) with ESMTPS id EE0B141CCC\n for <intel-wired-lan@lists.osuosl.org>; Fri, 13 Feb 2026 15:27:11 +0000 (UTC)","from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])\n by tor.source.kernel.org (Postfix) with ESMTP id 281BE6132F;\n Fri, 13 Feb 2026 15:27:11 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id 5691FC116C6;\n Fri, 13 Feb 2026 15:27:10 +0000 (UTC)"],"X-Virus-Scanned":["amavis at osuosl.org","amavis at osuosl.org"],"X-Comment":"SPF check N/A for local connections - client-ip=140.211.166.142;\n helo=lists1.osuosl.org; envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=<UNKNOWN> ","DKIM-Filter":["OpenDKIM Filter v2.11.0 smtp4.osuosl.org 3445C41CDD","OpenDKIM Filter v2.11.0 smtp4.osuosl.org EE0B141CCC"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org;\n\ts=default; t=1770996434;\n\tbh=Vcvx7U3p/OjFbsOEFnBtEZQ7VQzldF522h8byCOUXRk=;\n\th=From:Date:References:In-Reply-To:To:Cc:Subject:List-Id:\n\t List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:\n\t From;\n\tb=oePI0PmNYFpgG2Vb0A2CjXV7z1rPXfHsVe1PwbHRTMzSlQeApBCdXbdPG2Wo558J8\n\t rAguzp243zdSf7zQOZMunlKlA0R9xeTJbxY1eTF05jovZAeV9QRooBSncFaEogIrg9\n\t 8wE/azWt0xmXvn1p3flRhbCrG24pmpkTn+TD4WmWwtA0UoHkfLCYE6ZC/Cjr7tIkgT\n\t EaLh0+ErNJaOAaF7sIH5N1h1m7wyGttWEULceHcjI/ycqa+ojPmSi2ftEr05UpQSU8\n\t iOadD9ORIpPmM/ie9ZtQ0bw9WyvQV0tLK8ilWT4NWtUeJ2kJIAjC8bQC4cULTZ8aFt\n\t ZDJCEfMIEKxqw==","Received-SPF":"Pass (mailfrom) identity=mailfrom;\n client-ip=2600:3c04:e001:324:0:1991:8:25; helo=tor.source.kernel.org;\n envelope-from=lorenzo@kernel.org; receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp4.osuosl.org EE0B141CCC","From":"Lorenzo Bianconi <lorenzo@kernel.org>","Date":"Fri, 13 Feb 2026 16:26:23 +0100","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260213-bpf-xdp-meta-rxcksum-v2-4-a82c4802afbe@kernel.org>","References":"<20260213-bpf-xdp-meta-rxcksum-v2-0-a82c4802afbe@kernel.org>","In-Reply-To":"<20260213-bpf-xdp-meta-rxcksum-v2-0-a82c4802afbe@kernel.org>","To":"Donald Hunter <donald.hunter@gmail.com>,\n Jakub Kicinski <kuba@kernel.org>, \"David S. Miller\" <davem@davemloft.net>,\n Eric Dumazet <edumazet@google.com>, Paolo Abeni <pabeni@redhat.com>,\n Simon Horman <horms@kernel.org>, Alexei Starovoitov <ast@kernel.org>,\n Daniel Borkmann <daniel@iogearbox.net>,\n Jesper Dangaard Brouer <hawk@kernel.org>,\n John Fastabend <john.fastabend@gmail.com>,\n Stanislav Fomichev <sdf@fomichev.me>, Andrew Lunn <andrew+netdev@lunn.ch>,\n Tony Nguyen <anthony.l.nguyen@intel.com>,\n Przemek Kitszel <przemyslaw.kitszel@intel.com>,\n Alexander Lobakin <aleksander.lobakin@intel.com>,\n Andrii Nakryiko <andrii@kernel.org>,\n Martin KaFai Lau <martin.lau@linux.dev>,\n Eduard Zingerman <eddyz87@gmail.com>, Song Liu <song@kernel.org>,\n Yonghong Song <yonghong.song@linux.dev>, KP Singh <kpsingh@kernel.org>,\n Hao Luo <haoluo@google.com>, Jiri Olsa <jolsa@kernel.org>,\n Shuah Khan <shuah@kernel.org>,\n Maciej Fijalkowski <maciej.fijalkowski@intel.com>","Cc":"Jakub Sitnicki <jakub@cloudflare.com>, netdev@vger.kernel.org,\n bpf@vger.kernel.org, intel-wired-lan@lists.osuosl.org,\n linux-kselftest@vger.kernel.org,\n Aleksandr Loktionov <aleksandr.loktionov@intel.com>,\n Lorenzo Bianconi <lorenzo@kernel.org>","X-Mailer":"b4 0.14.2","X-Mailman-Original-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n d=kernel.org; s=k20201202; t=1770996430;\n bh=mKthyc040X79lx7Eqzqvw7OHAw5r1zFGOUFmnRtV5Fk=;\n h=From:Date:Subject:References:In-Reply-To:To:Cc:From;\n b=BNFAb0eDvmrqihxgZwCoRz2YrE4jYk5+baj170bG82X+zs3qncofXSMuUcuQAPhpa\n m13KUApzBSUIVz1MxD2W6GfLbCdDCKBt2jIdqn9hxN8ZLMShgn90gF63cfC7y/oQTb\n UnC3sN/xIReR8VO2eAlb+HBprXXrmfL7PWWJF5hQ90gQamV+v25JJvcsVQg7nnYuRA\n Gn2RTh2wwhM/92OGN/ZOVMGW4O6bohMiBets/vFuITEJ+r0fYwGOlRm+t1hNaMFQ+6\n TwasBx6cp8DaGNNnpC6jFHzMJshTIpvw4zs8y0chHLurEHExXTMV+8dOrLwcI1frja\n NK5vurvcSQETA==","X-Mailman-Original-Authentication-Results":["smtp4.osuosl.org;\n dmarc=pass (p=quarantine dis=none)\n header.from=kernel.org","smtp4.osuosl.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.a=rsa-sha256 header.s=k20201202 header.b=BNFAb0eD"],"Subject":"[Intel-wired-lan] [PATCH bpf-next v2 4/5] selftests/bpf: Add\n selftest support for bpf_xdp_metadata_rx_checksum","X-BeenThere":"intel-wired-lan@osuosl.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Intel Wired Ethernet Linux Kernel Driver Development\n <intel-wired-lan.osuosl.org>","List-Unsubscribe":"<https://lists.osuosl.org/mailman/options/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>","List-Archive":"<http://lists.osuosl.org/pipermail/intel-wired-lan/>","List-Post":"<mailto:intel-wired-lan@osuosl.org>","List-Help":"<mailto:intel-wired-lan-request@osuosl.org?subject=help>","List-Subscribe":"<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>","Errors-To":"intel-wired-lan-bounces@osuosl.org","Sender":"\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"},"content":"Introduce support to xdp_metadata selftest for bpf_xdp_metadata_rx_checksum\nkfunc.\n\nReviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>\nSigned-off-by: Lorenzo Bianconi <lorenzo@kernel.org>\n---\n tools/testing/selftests/bpf/prog_tests/xdp_metadata.c | 6 ++++++\n tools/testing/selftests/bpf/progs/xdp_metadata.c      | 3 +++\n tools/testing/selftests/bpf/xdp_metadata.h            | 8 ++++++++\n 3 files changed, 17 insertions(+)","diff":"diff --git a/tools/testing/selftests/bpf/prog_tests/xdp_metadata.c b/tools/testing/selftests/bpf/prog_tests/xdp_metadata.c\nindex 19f92affc2daa23fdd869554e7a0475b86350a4f..31f3629eb0681be656fa0af74fc0d419a3d135fc 100644\n--- a/tools/testing/selftests/bpf/prog_tests/xdp_metadata.c\n+++ b/tools/testing/selftests/bpf/prog_tests/xdp_metadata.c\n@@ -310,6 +310,12 @@ static int verify_xsk_metadata(struct xsk *xsk, bool sent_from_af_xdp)\n \tif (!ASSERT_NEQ(meta->rx_hash, 0, \"rx_hash\"))\n \t\treturn -1;\n \n+\tif (!ASSERT_EQ(meta->ip_summed, XDP_CHECKSUM_NONE, \"rx_ip_summed\"))\n+\t\treturn -1;\n+\n+\tif (!ASSERT_EQ(meta->cksum_meta, 0, \"rx_cksum_meta\"))\n+\t\treturn -1;\n+\n \tif (!sent_from_af_xdp) {\n \t\tif (!ASSERT_NEQ(meta->rx_hash_type & XDP_RSS_TYPE_L4, 0, \"rx_hash_type\"))\n \t\t\treturn -1;\ndiff --git a/tools/testing/selftests/bpf/progs/xdp_metadata.c b/tools/testing/selftests/bpf/progs/xdp_metadata.c\nindex 09bb8a038d528cf26c5b314cc927915ac2796bf0..72f69c5c659592cca1f04a512868f2101aa2e962 100644\n--- a/tools/testing/selftests/bpf/progs/xdp_metadata.c\n+++ b/tools/testing/selftests/bpf/progs/xdp_metadata.c\n@@ -98,6 +98,9 @@ int rx(struct xdp_md *ctx)\n \tbpf_xdp_metadata_rx_hash(ctx, &meta->rx_hash, &meta->rx_hash_type);\n \tbpf_xdp_metadata_rx_vlan_tag(ctx, &meta->rx_vlan_proto,\n \t\t\t\t     &meta->rx_vlan_tci);\n+\tbpf_xdp_metadata_rx_checksum(ctx,\n+\t\t\t\t     (enum xdp_checksum *)&meta->ip_summed,\n+\t\t\t\t     &meta->cksum_meta);\n \n \treturn bpf_redirect_map(&xsk, ctx->rx_queue_index, XDP_PASS);\n }\ndiff --git a/tools/testing/selftests/bpf/xdp_metadata.h b/tools/testing/selftests/bpf/xdp_metadata.h\nindex 87318ad1117a1d677af121f11778178532e2a562..837cd1efe6b5aebd0f62bae4c49d5bfd77db64bc 100644\n--- a/tools/testing/selftests/bpf/xdp_metadata.h\n+++ b/tools/testing/selftests/bpf/xdp_metadata.h\n@@ -30,6 +30,10 @@ enum xdp_meta_field {\n \tXDP_META_FIELD_VLAN_TAG\t= BIT(2),\n };\n \n+#define XDP_CHECKSUM_NONE\t\t0\n+#define XDP_CHECKSUM_UNNECESSARY\t1\n+#define XDP_CHECKSUM_COMPLETE\t\t2\n+\n struct xdp_meta {\n \tunion {\n \t\t__u64 rx_timestamp;\n@@ -48,5 +52,9 @@ struct xdp_meta {\n \t\t};\n \t\t__s32 rx_vlan_tag_err;\n \t};\n+\tstruct {\n+\t\t__u8 ip_summed;\n+\t\t__u32 cksum_meta;\n+\t};\n \tenum xdp_meta_field hint_valid;\n };\n","prefixes":["bpf-next","v2","4/5"]}