Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2214689/?format=api
{ "id": 2214689, "url": "http://patchwork.ozlabs.org/api/patches/2214689/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260323101558.1477593-1-poros@redhat.com/", "project": { "id": 46, "url": "http://patchwork.ozlabs.org/api/projects/46/?format=api", "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": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260323101558.1477593-1-poros@redhat.com>", "list_archive_url": null, "date": "2026-03-23T10:15:58", "name": "[iwl-net,v2] iavf: fix wrong VLAN mask for legacy Rx descriptors L2TAG2", "commit_ref": null, "pull_url": null, "state": "under-review", "archived": false, "hash": "d8efb6dec214bf4cfbc18bb31ca5112eef74c873", "submitter": { "id": 74657, "url": "http://patchwork.ozlabs.org/api/people/74657/?format=api", "name": "Petr Oros", "email": "poros@redhat.com" }, "delegate": { "id": 109701, "url": "http://patchwork.ozlabs.org/api/users/109701/?format=api", "username": "anguy11", "first_name": "Anthony", "last_name": "Nguyen", "email": "anthony.l.nguyen@intel.com" }, "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260323101558.1477593-1-poros@redhat.com/mbox/", "series": [ { "id": 497079, "url": "http://patchwork.ozlabs.org/api/series/497079/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=497079", "date": "2026-03-23T10:15:58", "name": "[iwl-net,v2] iavf: fix wrong VLAN mask for legacy Rx descriptors L2TAG2", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/497079/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2214689/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2214689/checks/", "tags": {}, "related": [], "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=EYPw6aTd;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=patchwork.ozlabs.org)" ], "Received": [ "from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138])\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 4ffTbQ4CcQz1xy3\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 23 Mar 2026 21:16:18 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id 184F282315;\n\tMon, 23 Mar 2026 10:16:17 +0000 (UTC)", "from smtp1.osuosl.org ([127.0.0.1])\n by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id ysPFQYqeQ13n; Mon, 23 Mar 2026 10:16:16 +0000 (UTC)", "from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id 4C4C0822DD;\n\tMon, 23 Mar 2026 10:16:16 +0000 (UTC)", "from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136])\n by lists1.osuosl.org (Postfix) with ESMTP id 36197F4\n for <intel-wired-lan@lists.osuosl.org>; Mon, 23 Mar 2026 10:16:15 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n by smtp3.osuosl.org (Postfix) with ESMTP id 1B7B56076C\n for <intel-wired-lan@lists.osuosl.org>; Mon, 23 Mar 2026 10:16:15 +0000 (UTC)", "from smtp3.osuosl.org ([127.0.0.1])\n by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id QNRTLh6vqzx4 for <intel-wired-lan@lists.osuosl.org>;\n Mon, 23 Mar 2026 10:16:14 +0000 (UTC)", "from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.129.124])\n by smtp3.osuosl.org (Postfix) with ESMTPS id E230760769\n for <intel-wired-lan@lists.osuosl.org>; Mon, 23 Mar 2026 10:16:13 +0000 (UTC)", "from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com\n (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by\n relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,\n cipher=TLS_AES_256_GCM_SHA384) id us-mta-385-wdN1LF3gNVqkea8eo8dASQ-1; Mon,\n 23 Mar 2026 06:16:08 -0400", "from mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com\n (mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.17])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS\n id B866C19560AA; Mon, 23 Mar 2026 10:16:05 +0000 (UTC)", "from ShadowPeak.redhat.com (unknown [10.45.224.50])\n by mx-prod-int-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP\n id 46FF81954102; Mon, 23 Mar 2026 10:16:01 +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 smtp1.osuosl.org 4C4C0822DD", "OpenDKIM Filter v2.11.0 smtp3.osuosl.org E230760769" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org;\n\ts=default; t=1774260976;\n\tbh=R1kpFgmjio88lonaduhh+r5O9wW+Z9HoaBGiKIQgUdw=;\n\th=From:To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:\n\t List-Post:List-Help:List-Subscribe:Cc:From;\n\tb=EYPw6aTdImuIxv2tijhVP/+riBBAaUc58M3cr5abPnePt6o5rPnz4zpHYYet+3oY0\n\t z7B+0ziShimn2oMpO765zvaK2UHsjx04Ff+YhhPjM2+Dbw3K9Uyrf3UDSXDMvzdGhR\n\t ZFmOd3H04cRsjoxkxaryZs+BPEbCXcG2/f9cW6VhRKJj9wxyA7Iy4GN/QzQRbMxEDD\n\t Z0ZVGSDC7L2mVGL7/ba5ZwL2jALW6ZU/gBok3A2465epIyg/y7kQkcFLLkS395oJWz\n\t squco/+X0g1SWfcVTRoI+yi3mrwgtxTSsQDuXP9hyACcJq/f7aJe8L5T+zLdRiGgM/\n\t o10sTl/6hBsjA==", "Received-SPF": "Pass (mailfrom) identity=mailfrom; client-ip=170.10.129.124;\n helo=us-smtp-delivery-124.mimecast.com; envelope-from=poros@redhat.com;\n receiver=<UNKNOWN>", "DMARC-Filter": "OpenDMARC Filter v1.4.2 smtp3.osuosl.org E230760769", "X-MC-Unique": "wdN1LF3gNVqkea8eo8dASQ-1", "X-Mimecast-MFC-AGG-ID": "wdN1LF3gNVqkea8eo8dASQ_1774260966", "From": "Petr Oros <poros@redhat.com>", "To": "netdev@vger.kernel.org", "Date": "Mon, 23 Mar 2026 11:15:58 +0100", "Message-ID": "<20260323101558.1477593-1-poros@redhat.com>", "MIME-Version": "1.0", "X-Scanned-By": "MIMEDefang 3.0 on 10.30.177.17", "X-Mimecast-MFC-PROC-ID": "N4sVslECA2nTFYnY9M3d580dmdPXMU564b6mH1SdnqY_1774260966", "X-Mimecast-Originator": "redhat.com", "Content-Transfer-Encoding": "8bit", "content-type": "text/plain; charset=\"US-ASCII\"; x-default=true", "X-Mailman-Original-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=redhat.com;\n s=mimecast20190719; t=1774260971;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding;\n bh=R1kpFgmjio88lonaduhh+r5O9wW+Z9HoaBGiKIQgUdw=;\n b=GG7JxM/JRGPEb+bSVvhQa/tVTqRVOv8nynlx09K/PXrvyu3Rg4C4S75dhw95EDyOlbRCAC\n Z5+Z0qEi0ibYbmoiXCr5b62o609SqPQtxcYvsHs5bvJKpxTi+oXB88QNqaaLrF5nwsS363\n 2NkX/M/RTx6h4xnDkVtslQ4iYwx1mgg=", "X-Mailman-Original-Authentication-Results": [ "smtp3.osuosl.org;\n dmarc=pass (p=quarantine dis=none)\n header.from=redhat.com", "smtp3.osuosl.org;\n dkim=pass (1024-bit key,\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=GG7JxM/J" ], "Subject": "[Intel-wired-lan] [PATCH iwl-net v2] iavf: fix wrong VLAN mask for\n legacy Rx descriptors L2TAG2", "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>", "Cc": "Paul Menzel <pmenzel@molgen.mpg.de>,\n Przemek Kitszel <przemyslaw.kitszel@intel.com>,\n Eric Dumazet <edumazet@google.com>, linux-kernel@vger.kernel.org,\n Aleksandr Loktionov <aleksandr.loktionov@intel.com>,\n Andrew Lunn <andrew+netdev@lunn.ch>,\n Tony Nguyen <anthony.l.nguyen@intel.com>,\n Mateusz Polchlopek <mateusz.polchlopek@intel.com>,\n Jacob Keller <jacob.e.keller@intel.com>, Jakub Kicinski <kuba@kernel.org>,\n Paolo Abeni <pabeni@redhat.com>, \"David S. Miller\" <davem@davemloft.net>,\n intel-wired-lan@lists.osuosl.org", "Errors-To": "intel-wired-lan-bounces@osuosl.org", "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>" }, "content": "The IAVF_RXD_LEGACY_L2TAG2_M mask was incorrectly defined as\nGENMASK_ULL(63, 32), extracting 32 bits from qw2 instead of the\n16-bit VLAN tag. In the legacy Rx descriptor layout, the 2nd L2TAG2\n(VLAN tag) occupies bits 63:48 of qw2, not 63:32.\n\nThe oversized mask causes FIELD_GET to return a 32-bit value where the\nactual VLAN tag sits in bits 31:16. When this value is passed to\niavf_receive_skb() as a u16 parameter, it gets truncated to the lower\n16 bits (which contain the 1st L2TAG2, typically zero). As a result,\n__vlan_hwaccel_put_tag() is never called and software VLAN interfaces\non VFs receive no traffic.\n\nThis affects VFs behind ice PF (VIRTCHNL VLAN v2) when the PF\nadvertises VLAN stripping into L2TAG2_2 and legacy descriptors are\nused.\n\nThe flex descriptor path already uses the correct mask\n(IAVF_RXD_FLEX_L2TAG2_2_M = GENMASK_ULL(63, 48)).\n\nReproducer:\n 1. Create 2 VFs on ice PF (echo 2 > sriov_numvfs)\n 2. Disable spoofchk on both VFs\n 3. Move each VF into a separate network namespace\n 4. On each VF: create VLAN interface (e.g. vlan 198), assign IP,\n bring up\n 5. Set rx-vlan-offload OFF on both VFs\n 6. Ping between VLAN interfaces -> expect PASS\n (VLAN tag stays in packet data, kernel matches in-band)\n 7. Set rx-vlan-offload ON on both VFs\n 8. Ping between VLAN interfaces -> expect FAIL if bug present\n (HW strips VLAN tag into descriptor L2TAG2 field, wrong mask\n extracts bits 47:32 instead of 63:48, truncated to u16 -> zero,\n __vlan_hwaccel_put_tag() never called, packet delivered to parent\n interface, not VLAN interface)\n\nThe reproducer requires legacy Rx descriptors. On modern ice + iavf\nwith full PTP support, flex descriptors are always negotiated and the\nbuggy legacy path is never reached. Flex descriptors require all of:\n - CONFIG_PTP_1588_CLOCK enabled\n - VIRTCHNL_VF_OFFLOAD_RX_FLEX_DESC granted by PF\n - PTP capabilities negotiated (VIRTCHNL_VF_CAP_PTP)\n - VIRTCHNL_1588_PTP_CAP_RX_TSTAMP supported\n - VIRTCHNL_RXDID_2_FLEX_SQ_NIC present in DDP profile\n\nIf any condition is not met, iavf_select_rx_desc_format() falls back\nto legacy descriptors (RXDID=1) and the wrong L2TAG2 mask is hit.\n\nFixes: 2dc8e7c36d80 (\"iavf: refactor iavf_clean_rx_irq to support legacy and flex descriptors\")\nSigned-off-by: Petr Oros <poros@redhat.com>\nReviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>\nReviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>\n---\nv2: added reproducer steps and flex descriptor requirements to commit\n message (Paul)\n---\n drivers/net/ethernet/intel/iavf/iavf_type.h | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)", "diff": "diff --git a/drivers/net/ethernet/intel/iavf/iavf_type.h b/drivers/net/ethernet/intel/iavf/iavf_type.h\nindex 1d8cf29cb65ac5..5bb1de1cfd33b1 100644\n--- a/drivers/net/ethernet/intel/iavf/iavf_type.h\n+++ b/drivers/net/ethernet/intel/iavf/iavf_type.h\n@@ -277,7 +277,7 @@ struct iavf_rx_desc {\n /* L2 Tag 2 Presence */\n #define IAVF_RXD_LEGACY_L2TAG2P_M\t\tBIT(0)\n /* Stripped S-TAG VLAN from the receive packet */\n-#define IAVF_RXD_LEGACY_L2TAG2_M\t\tGENMASK_ULL(63, 32)\n+#define IAVF_RXD_LEGACY_L2TAG2_M\t\tGENMASK_ULL(63, 48)\n /* Stripped S-TAG VLAN from the receive packet */\n #define IAVF_RXD_FLEX_L2TAG2_2_M\t\tGENMASK_ULL(63, 48)\n /* The packet is a UDP tunneled packet */\n", "prefixes": [ "iwl-net", "v2" ] }