get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 17136,
    "url": "https://patches.dpdk.org/api/patches/17136/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1479740470-6723-35-git-send-email-arybchenko@solarflare.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1479740470-6723-35-git-send-email-arybchenko@solarflare.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1479740470-6723-35-git-send-email-arybchenko@solarflare.com",
    "date": "2016-11-21T15:00:48",
    "name": "[dpdk-dev,34/56] net/sfc: add device configuration checks",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "92aac4ba4760aaab23e2907a5a9902b9868bfdd5",
    "submitter": {
        "id": 607,
        "url": "https://patches.dpdk.org/api/people/607/?format=api",
        "name": "Andrew Rybchenko",
        "email": "arybchenko@solarflare.com"
    },
    "delegate": {
        "id": 319,
        "url": "https://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1479740470-6723-35-git-send-email-arybchenko@solarflare.com/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/17136/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/17136/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id 79660D55C;\n\tMon, 21 Nov 2016 16:03:24 +0100 (CET)",
            "from nbfkord-smmo02.seg.att.com (nbfkord-smmo02.seg.att.com\n\t[209.65.160.78]) by dpdk.org (Postfix) with ESMTP id CDEF0377A\n\tfor <dev@dpdk.org>; Mon, 21 Nov 2016 16:01:37 +0100 (CET)",
            "from unknown [12.187.104.26]\n\tby nbfkord-smmo02.seg.att.com(mxl_mta-7.2.4-7) with SMTP id\n\t15c03385.0.1541294.00-2318.3424229.nbfkord-smmo02.seg.att.com\n\t(envelope-from <arybchenko@solarflare.com>); \n\tMon, 21 Nov 2016 15:01:37 +0000 (UTC)",
            "from ocex03.SolarFlarecom.com (10.20.40.36) by\n\tocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server\n\t(TLS) id 15.0.1044.25; Mon, 21 Nov 2016 07:01:22 -0800",
            "from opal.uk.solarflarecom.com (10.17.10.1) by\n\tocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server\n\t(TLS) id\n\t15.0.1044.25 via Frontend Transport; Mon, 21 Nov 2016 07:01:21 -0800",
            "from uklogin.uk.solarflarecom.com (uklogin.uk.solarflarecom.com\n\t[10.17.10.10])\n\tby opal.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id\n\tuALF1Kfg007200 for <dev@dpdk.org>; Mon, 21 Nov 2016 15:01:20 GMT",
            "from uklogin.uk.solarflarecom.com (localhost.localdomain\n\t[127.0.0.1])\n\tby uklogin.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id\n\tuALF1J3P006765 for <dev@dpdk.org>; Mon, 21 Nov 2016 15:01:20 GMT"
        ],
        "X-MXL-Hash": "58330c516ba27df5-5082df4493005231f9a2780c4c6368f2bc497bc1",
        "From": "Andrew Rybchenko <arybchenko@solarflare.com>",
        "To": "<dev@dpdk.org>",
        "Date": "Mon, 21 Nov 2016 15:00:48 +0000",
        "Message-ID": "<1479740470-6723-35-git-send-email-arybchenko@solarflare.com>",
        "X-Mailer": "git-send-email 1.8.2.3",
        "In-Reply-To": "<1479740470-6723-1-git-send-email-arybchenko@solarflare.com>",
        "References": "<1479740470-6723-1-git-send-email-arybchenko@solarflare.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-AnalysisOut": [
            "[v=2.1 cv=UI/baXry c=1 sm=1 tr=0 a=8BlWFWvVlq5taO8ncb8nKg==]",
            "[:17 a=L24OOQBejmoA:10 a=zRKbQ67AAAAA:8 a=XGGawuPn1W7cvlOXp]",
            "[WkA:9 a=PA03WX8tBzeizutn5_OT:22]"
        ],
        "X-Spam": "[F=0.3224512904; CM=0.500; S=0.322(2015072901)]",
        "X-MAIL-FROM": "<arybchenko@solarflare.com>",
        "X-SOURCE-IP": "[12.187.104.26]",
        "Subject": "[dpdk-dev] [PATCH 34/56] net/sfc: add device configuration checks",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Manual link speed/duplex configuration is not supported yet.\nLoopback is not supported yet.\nFlow Director is not supported.\nLink status change notification using interrupt is not supported yet.\nReceive data notification using interrupts is not supported yet.\n\nReviewed-by: Andy Moreton <amoreton@solarflare.com>\nSigned-off-by: Andrew Rybchenko <arybchenko@solarflare.com>\n---\n doc/guides/nics/sfc_efx.rst | 14 ++++++++++++\n drivers/net/sfc/efx/sfc.c   | 55 +++++++++++++++++++++++++++++++++++++++++++++\n 2 files changed, 69 insertions(+)",
    "diff": "diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst\nindex 2eebcd7..31e86a7 100644\n--- a/doc/guides/nics/sfc_efx.rst\n+++ b/doc/guides/nics/sfc_efx.rst\n@@ -37,6 +37,20 @@ More information can be found at `Solarflare Communications website\n <http://solarflare.com>`_.\n \n \n+Non-supported Features\n+----------------------\n+\n+The features not yet supported include:\n+\n+- Link status change interrupt\n+\n+- Receive queue interupts\n+\n+- Priority-based flow control\n+\n+- Loopback\n+\n+\n Supported NICs\n --------------\n \ndiff --git a/drivers/net/sfc/efx/sfc.c b/drivers/net/sfc/efx/sfc.c\nindex cbb14d7..befe68d 100644\n--- a/drivers/net/sfc/efx/sfc.c\n+++ b/drivers/net/sfc/efx/sfc.c\n@@ -82,9 +82,55 @@ sfc_dma_free(const struct sfc_adapter *sa, efsys_mem_t *esmp)\n \tmemset(esmp, 0, sizeof(*esmp));\n }\n \n+/*\n+ * Check requested device level configuration.\n+ * Receive and transmit configuration is checked in corresponding\n+ * modules.\n+ */\n+static int\n+sfc_check_conf(struct sfc_adapter *sa)\n+{\n+\tconst struct rte_eth_conf *conf = &sa->eth_dev->data->dev_conf;\n+\tint rc = 0;\n+\n+\tif (conf->link_speeds != ETH_LINK_SPEED_AUTONEG) {\n+\t\tsfc_err(sa, \"Manual link speed/duplex choice not supported\");\n+\t\trc = EINVAL;\n+\t}\n+\n+\tif (conf->lpbk_mode != 0) {\n+\t\tsfc_err(sa, \"Loopback not supported\");\n+\t\trc = EINVAL;\n+\t}\n+\n+\tif (conf->dcb_capability_en != 0) {\n+\t\tsfc_err(sa, \"Priority-based flow control not supported\");\n+\t\trc = EINVAL;\n+\t}\n+\n+\tif (conf->fdir_conf.mode != RTE_FDIR_MODE_NONE) {\n+\t\tsfc_err(sa, \"Flow Director not supported\");\n+\t\trc = EINVAL;\n+\t}\n+\n+\tif (conf->intr_conf.lsc != 0) {\n+\t\tsfc_err(sa, \"Link status change interrupt not supported\");\n+\t\trc = EINVAL;\n+\t}\n+\n+\tif (conf->intr_conf.rxq != 0) {\n+\t\tsfc_err(sa, \"Receive queue interrupt not supported\");\n+\t\trc = EINVAL;\n+\t}\n+\n+\treturn rc;\n+}\n+\n int\n sfc_configure(struct sfc_adapter *sa)\n {\n+\tint rc;\n+\n \tsfc_log_init(sa, \"entry\");\n \n \tSFC_ASSERT(sfc_adapter_is_locked(sa));\n@@ -92,9 +138,18 @@ sfc_configure(struct sfc_adapter *sa)\n \tSFC_ASSERT(sa->state == SFC_ADAPTER_INITIALIZED);\n \tsa->state = SFC_ADAPTER_CONFIGURING;\n \n+\trc = sfc_check_conf(sa);\n+\tif (rc != 0)\n+\t\tgoto fail_check_conf;\n+\n \tsa->state = SFC_ADAPTER_CONFIGURED;\n \tsfc_log_init(sa, \"done\");\n \treturn 0;\n+\n+fail_check_conf:\n+\tsa->state = SFC_ADAPTER_INITIALIZED;\n+\tsfc_log_init(sa, \"failed %d\", rc);\n+\treturn rc;\n }\n \n void\n",
    "prefixes": [
        "dpdk-dev",
        "34/56"
    ]
}