get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 960022,
    "url": "http://patchwork.ozlabs.org/api/patches/960022/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20180820151233.14629-8-alice.michael@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": "<20180820151233.14629-8-alice.michael@intel.com>",
    "list_archive_url": null,
    "date": "2018-08-20T15:12:29",
    "name": "[next,S95,08/12] i40evf: Validate the number of queues a PF sends",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "fbe798f63efba14824271f9eeb2f35e0c60e5cb2",
    "submitter": {
        "id": 71123,
        "url": "http://patchwork.ozlabs.org/api/people/71123/?format=api",
        "name": "Michael, Alice",
        "email": "alice.michael@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/20180820151233.14629-8-alice.michael@intel.com/mbox/",
    "series": [
        {
            "id": 61649,
            "url": "http://patchwork.ozlabs.org/api/series/61649/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=61649",
            "date": "2018-08-20T15:12:30",
            "name": null,
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/61649/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/960022/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/960022/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\tspf=pass (mailfrom) smtp.mailfrom=osuosl.org\n\t(client-ip=140.211.166.136; helo=silver.osuosl.org;\n\tenvelope-from=intel-wired-lan-bounces@osuosl.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org;\n\tdmarc=fail (p=none dis=none) header.from=intel.com"
        ],
        "Received": [
            "from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 41vVHZ3LBmz9s4c\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 21 Aug 2018 09:23:54 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby silver.osuosl.org (Postfix) with ESMTP id 1D8AC21561;\n\tMon, 20 Aug 2018 23:23:53 +0000 (UTC)",
            "from silver.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id NIwMcLvSpwJT; Mon, 20 Aug 2018 23:23:50 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby silver.osuosl.org (Postfix) with ESMTP id 2F7E523040;\n\tMon, 20 Aug 2018 23:23:50 +0000 (UTC)",
            "from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136])\n\tby ash.osuosl.org (Postfix) with ESMTP id CD4BD1C16D3\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 20 Aug 2018 23:23:47 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n\tby silver.osuosl.org (Postfix) with ESMTP id CAE0F21561\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 20 Aug 2018 23:23:47 +0000 (UTC)",
            "from silver.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id IURmQP8oMZpK for <intel-wired-lan@lists.osuosl.org>;\n\tMon, 20 Aug 2018 23:23:47 +0000 (UTC)",
            "from mga02.intel.com (mga02.intel.com [134.134.136.20])\n\tby silver.osuosl.org (Postfix) with ESMTPS id 18E762302D\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 20 Aug 2018 23:23:47 +0000 (UTC)",
            "from orsmga001.jf.intel.com ([10.7.209.18])\n\tby orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t20 Aug 2018 16:23:45 -0700",
            "from alicemic-2.jf.intel.com ([10.166.16.121])\n\tby orsmga001.jf.intel.com with ESMTP; 20 Aug 2018 16:23:32 -0700"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.53,267,1531810800\"; d=\"scan'208\";a=\"83446374\"",
        "From": "Alice Michael <alice.michael@intel.com>",
        "To": "alice.michael@intel.com,\n\tintel-wired-lan@lists.osuosl.org",
        "Date": "Mon, 20 Aug 2018 08:12:29 -0700",
        "Message-Id": "<20180820151233.14629-8-alice.michael@intel.com>",
        "X-Mailer": "git-send-email 2.9.5",
        "In-Reply-To": "<20180820151233.14629-1-alice.michael@intel.com>",
        "References": "<20180820151233.14629-1-alice.michael@intel.com>",
        "Subject": "[Intel-wired-lan] [next PATCH S95 08/12] i40evf: Validate the\n\tnumber of queues a PF sends",
        "X-BeenThere": "intel-wired-lan@osuosl.org",
        "X-Mailman-Version": "2.1.24",
        "Precedence": "list",
        "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n\t<intel-wired-lan.osuosl.org>",
        "List-Unsubscribe": "<https://lists.osuosl.org/mailman/options/intel-wired-lan>, \n\t<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\t<mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>",
        "Cc": "Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>",
        "MIME-Version": "1.0",
        "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: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>\n\nA PF can send any number of queues to the VF and the VF may not\nbe able to support that many. Check to see that the number of\nqueues is less than or equal to the max number of queues the\nVF can have.\n\nSigned-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>\n---\n .../net/ethernet/intel/i40evf/i40evf_virtchnl.c    | 32 ++++++++++++++++++++++\n 1 file changed, 32 insertions(+)",
    "diff": "diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c b/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c\nindex 79b7be8..6579dab 100644\n--- a/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c\n+++ b/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c\n@@ -154,6 +154,32 @@ int i40evf_send_vf_config_msg(struct i40evf_adapter *adapter)\n }\n \n /**\n+ * i40evf_validate_num_queues\n+ * @adapter: adapter structure\n+ *\n+ * Validate that the number of queues the PF has sent in\n+ * VIRTCHNL_OP_GET_VF_RESOURCES is not larger than the VF can handle.\n+ **/\n+static void i40evf_validate_num_queues(struct i40evf_adapter *adapter)\n+{\n+\tif (adapter->vf_res->num_queue_pairs > I40EVF_MAX_REQ_QUEUES) {\n+\t\tstruct virtchnl_vsi_resource *vsi_res;\n+\t\tint i;\n+\n+\t\tdev_info(&adapter->pdev->dev, \"Received %d queues, but can only have a max of %d\\n\",\n+\t\t\t adapter->vf_res->num_queue_pairs,\n+\t\t\t I40EVF_MAX_REQ_QUEUES);\n+\t\tdev_info(&adapter->pdev->dev, \"Fixing by reducing queues to %d\\n\",\n+\t\t\t I40EVF_MAX_REQ_QUEUES);\n+\t\tadapter->vf_res->num_queue_pairs = I40EVF_MAX_REQ_QUEUES;\n+\t\tfor (i = 0; i < adapter->vf_res->num_vsis; i++) {\n+\t\t\tvsi_res = &adapter->vf_res->vsi_res[i];\n+\t\t\tvsi_res->num_queue_pairs = I40EVF_MAX_REQ_QUEUES;\n+\t\t}\n+\t}\n+}\n+\n+/**\n  * i40evf_get_vf_config\n  * @adapter: private adapter structure\n  *\n@@ -195,6 +221,11 @@ int i40evf_get_vf_config(struct i40evf_adapter *adapter)\n \terr = (i40e_status)le32_to_cpu(event.desc.cookie_low);\n \tmemcpy(adapter->vf_res, event.msg_buf, min(event.msg_len, len));\n \n+\t/* some PFs send more queues than we should have so validate that\n+\t * we aren't getting too many queues\n+\t */\n+\tif (!err)\n+\t\ti40evf_validate_num_queues(adapter);\n \ti40e_vf_parse_hw_config(hw, adapter->vf_res);\n out_alloc:\n \tkfree(event.msg_buf);\n@@ -1329,6 +1360,7 @@ void i40evf_virtchnl_completion(struct i40evf_adapter *adapter,\n \t\t\t  I40E_MAX_VF_VSI *\n \t\t\t  sizeof(struct virtchnl_vsi_resource);\n \t\tmemcpy(adapter->vf_res, msg, min(msglen, len));\n+\t\ti40evf_validate_num_queues(adapter);\n \t\ti40e_vf_parse_hw_config(&adapter->hw, adapter->vf_res);\n \t\tif (is_zero_ether_addr(adapter->hw.mac.addr)) {\n \t\t\t/* restore current mac address */\n",
    "prefixes": [
        "next",
        "S95",
        "08/12"
    ]
}