get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/1291786/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 1291786,
    "url": "http://patchwork.ozlabs.org/api/patches/1291786/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20200516005121.4963-11-anthony.l.nguyen@intel.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": "<20200516005121.4963-11-anthony.l.nguyen@intel.com>",
    "list_archive_url": null,
    "date": "2020-05-16T00:51:17",
    "name": "[S45,11/15] ice: allow host to clear administratively set VF MAC",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "fbe6ec16594d27c346a1b6c38a3c692bd5c80f95",
    "submitter": {
        "id": 68875,
        "url": "http://patchwork.ozlabs.org/api/people/68875/?format=api",
        "name": "Tony Nguyen",
        "email": "anthony.l.nguyen@intel.com"
    },
    "delegate": {
        "id": 68,
        "url": "http://patchwork.ozlabs.org/api/users/68/?format=api",
        "username": "jtkirshe",
        "first_name": "Jeff",
        "last_name": "Kirsher",
        "email": "jeffrey.t.kirsher@intel.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20200516005121.4963-11-anthony.l.nguyen@intel.com/mbox/",
    "series": [
        {
            "id": 177330,
            "url": "http://patchwork.ozlabs.org/api/series/177330/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=177330",
            "date": "2020-05-16T00:51:18",
            "name": "[S45,01/15] ice: Refactor ice_ena_vf_mappings to split MSIX and queue mappings",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/177330/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1291786/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1291786/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@bilbo.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Authentication-Results": [
            "ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=140.211.166.138; helo=whitealder.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org; receiver=<UNKNOWN>)",
            "ozlabs.org;\n dmarc=fail (p=none dis=none) header.from=intel.com"
        ],
        "Received": [
            "from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 49P6HB2TnKz9sTC\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 16 May 2020 10:54:14 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id B68B586064;\n\tSat, 16 May 2020 00:54:12 +0000 (UTC)",
            "from whitealder.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id eLhGzZLOOLKU; Sat, 16 May 2020 00:54:09 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 0C52186096;\n\tSat, 16 May 2020 00:54:06 +0000 (UTC)",
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n by ash.osuosl.org (Postfix) with ESMTP id A76941BF9C6\n for <intel-wired-lan@lists.osuosl.org>; Sat, 16 May 2020 00:53:59 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n by fraxinus.osuosl.org (Postfix) with ESMTP id A473E87F7D\n for <intel-wired-lan@lists.osuosl.org>; Sat, 16 May 2020 00:53:59 +0000 (UTC)",
            "from fraxinus.osuosl.org ([127.0.0.1])\n by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n with ESMTP id MYc7jlAxnmEU for <intel-wired-lan@lists.osuosl.org>;\n Sat, 16 May 2020 00:53:58 +0000 (UTC)",
            "from mga18.intel.com (mga18.intel.com [134.134.136.126])\n by fraxinus.osuosl.org (Postfix) with ESMTPS id BA567881F0\n for <intel-wired-lan@lists.osuosl.org>; Sat, 16 May 2020 00:53:56 +0000 (UTC)",
            "from orsmga003.jf.intel.com ([10.7.209.27])\n by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 15 May 2020 17:53:54 -0700",
            "from unknown (HELO localhost.jf.intel.com) ([10.166.241.65])\n by orsmga003.jf.intel.com with ESMTP; 15 May 2020 17:53:54 -0700"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "IronPort-SDR": [
            "\n VycuR3RXqSJ+lQtyeom5iw5BKQV5A2RH79v/URUxkzSZcELClhiqoENgyyL/c51vnqqHTaRPGo\n wM2Uh7jWRx2A==",
            "\n wzOyxnEYQtz/8hqOmvfCkdG1EmdK43G3bSCTVDCKp6z1259ykYoKYu1Xilr4a6H1bFzMxVznM4\n dWNsITesQ0zg=="
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.73,397,1583222400\"; d=\"scan'208\";a=\"263360547\"",
        "From": "Tony Nguyen <anthony.l.nguyen@intel.com>",
        "To": "intel-wired-lan@lists.osuosl.org",
        "Date": "Fri, 15 May 2020 17:51:17 -0700",
        "Message-Id": "<20200516005121.4963-11-anthony.l.nguyen@intel.com>",
        "X-Mailer": "git-send-email 2.20.1",
        "In-Reply-To": "<20200516005121.4963-1-anthony.l.nguyen@intel.com>",
        "References": "<20200516005121.4963-1-anthony.l.nguyen@intel.com>",
        "MIME-Version": "1.0",
        "Subject": "[Intel-wired-lan] [PATCH S45 11/15] ice: allow host to clear\n administratively set VF MAC",
        "X-BeenThere": "intel-wired-lan@osuosl.org",
        "X-Mailman-Version": "2.1.29",
        "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>",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-Transfer-Encoding": "7bit",
        "Errors-To": "intel-wired-lan-bounces@osuosl.org",
        "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"
    },
    "content": "From: Brett Creeley <brett.creeley@intel.com>\n\nCurrently a user is not allowed to clear a VF's administratively set MAC\non the PF. Fix this by allowing an all zero MAC address via \"ip link set\n${pf_eth} vf ${vf_id} mac 00:00:00:00:00:00\".\n\nAn example use case for this would be issuing a \"virsh shutdown\"\ncommand on a VM. The call to iproute mentioned above is part of this flow.\nWithout this change the driver incorrectly rejects clearing the VF's\nadministratively set MAC and prints unhelpful log messages.\n\nAlso, improve the comments surrounding this change.\n\nSigned-off-by: Brett Creeley <brett.creeley@intel.com>\n---\n .../net/ethernet/intel/ice/ice_virtchnl_pf.c  | 22 ++++++++++++-------\n 1 file changed, 14 insertions(+), 8 deletions(-)",
    "diff": "diff --git a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c\nindex f5596b45b996..abc4f2dba388 100644\n--- a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c\n+++ b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c\n@@ -3912,7 +3912,7 @@ int ice_set_vf_mac(struct net_device *netdev, int vf_id, u8 *mac)\n \tif (ice_validate_vf_id(pf, vf_id))\n \t\treturn -EINVAL;\n \n-\tif (is_zero_ether_addr(mac) || is_multicast_ether_addr(mac)) {\n+\tif (is_multicast_ether_addr(mac)) {\n \t\tnetdev_err(netdev, \"%pM not a valid unicast address\\n\", mac);\n \t\treturn -EINVAL;\n \t}\n@@ -3932,15 +3932,21 @@ int ice_set_vf_mac(struct net_device *netdev, int vf_id, u8 *mac)\n \t\treturn -EINVAL;\n \t}\n \n-\t/* copy MAC into dflt_lan_addr and trigger a VF reset. The reset\n-\t * flow will use the updated dflt_lan_addr and add a MAC filter\n-\t * using ice_add_mac. Also set pf_set_mac to indicate that the PF has\n-\t * set the MAC address for this VF.\n+\t/* VF is notified of its new MAC via the PF's response to the\n+\t * VIRTCHNL_OP_GET_VF_RESOURCES message after the VF has been reset\n \t */\n \tether_addr_copy(vf->dflt_lan_addr.addr, mac);\n-\tvf->pf_set_mac = true;\n-\tnetdev_info(netdev, \"MAC on VF %d set to %pM. VF driver will be reinitialized\\n\",\n-\t\t    vf_id, mac);\n+\tif (is_zero_ether_addr(mac)) {\n+\t\t/* VF will send VIRTCHNL_OP_ADD_ETH_ADDR message with its MAC */\n+\t\tvf->pf_set_mac = false;\n+\t\tnetdev_info(netdev, \"Removing MAC on VF %d. VF driver will be reinitialized\\n\",\n+\t\t\t    vf->vf_id);\n+\t} else {\n+\t\t/* PF will add MAC rule for the VF */\n+\t\tvf->pf_set_mac = true;\n+\t\tnetdev_info(netdev, \"Setting MAC %pM on VF %d. VF driver will be reinitialized\\n\",\n+\t\t\t    mac, vf_id);\n+\t}\n \n \tice_vc_reset_vf(vf);\n \treturn 0;\n",
    "prefixes": [
        "S45",
        "11/15"
    ]
}