get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 13926,
    "url": "https://patches.dpdk.org/api/patches/13926/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1466086011-11920-15-git-send-email-shreyansh.jain@nxp.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": "<1466086011-11920-15-git-send-email-shreyansh.jain@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1466086011-11920-15-git-send-email-shreyansh.jain@nxp.com",
    "date": "2016-06-16T14:06:48",
    "name": "[dpdk-dev,v3,14/17] ethdev: do not scan all pci devices on attach",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "cc9e7b2e9a27609618cc78cb2f7286055af3609a",
    "submitter": {
        "id": 497,
        "url": "https://patches.dpdk.org/api/people/497/?format=api",
        "name": "Shreyansh Jain",
        "email": "shreyansh.jain@nxp.com"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1466086011-11920-15-git-send-email-shreyansh.jain@nxp.com/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/13926/comments/",
    "check": "pending",
    "checks": "https://patches.dpdk.org/api/patches/13926/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 E8D46CB48;\n\tThu, 16 Jun 2016 16:07:11 +0200 (CEST)",
            "from na01-bl2-obe.outbound.protection.outlook.com\n\t(mail-bl2on0088.outbound.protection.outlook.com [65.55.169.88])\n\tby dpdk.org (Postfix) with ESMTP id AFB7ECB48\n\tfor <dev@dpdk.org>; Thu, 16 Jun 2016 16:07:09 +0200 (CEST)",
            "from BY2PR03CA043.namprd03.prod.outlook.com (10.141.249.16) by\n\tCY1PR0301MB1626.namprd03.prod.outlook.com (10.162.166.28) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id\n\t15.1.517.8; Thu, 16 Jun 2016 14:07:08 +0000",
            "from BY2FFO11FD026.protection.gbl (2a01:111:f400:7c0c::165) by\n\tBY2PR03CA043.outlook.office365.com (2a01:111:e400:2c5d::16) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.517.8 via\n\tFrontend Transport; Thu, 16 Jun 2016 14:07:08 +0000",
            "from az84smr01.freescale.net (192.88.158.2) by\n\tBY2FFO11FD026.mail.protection.outlook.com (10.1.15.215) with\n\tMicrosoft SMTP Server (TLS) id 15.1.511.7 via Frontend Transport;\n\tThu, 16 Jun 2016 14:07:08 +0000",
            "from Tophie.ap.freescale.net (Tophie.ap.freescale.net\n\t[10.232.14.199])\n\tby az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id\n\tu5GE6XoF026530; Thu, 16 Jun 2016 07:07:06 -0700"
        ],
        "Authentication-Results": "spf=fail (sender IP is 192.88.158.2)\n\tsmtp.mailfrom=nxp.com; 6wind.com; dkim=none (message not signed)\n\theader.d=none; 6wind.com; dmarc=none action=none header.from=nxp.com; ",
        "Received-SPF": "Fail (protection.outlook.com: domain of nxp.com does not\n\tdesignate 192.88.158.2 as permitted sender)\n\treceiver=protection.outlook.com; \n\tclient-ip=192.88.158.2; helo=az84smr01.freescale.net;",
        "From": "Shreyansh Jain <shreyansh.jain@nxp.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<viktorin@rehivetech.com>, <thomas.monjalon@6wind.com>, David Marchand\n\t<david.marchand@6wind.com>",
        "Date": "Thu, 16 Jun 2016 19:36:48 +0530",
        "Message-ID": "<1466086011-11920-15-git-send-email-shreyansh.jain@nxp.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1466086011-11920-1-git-send-email-shreyansh.jain@nxp.com>",
        "References": "<1454076516-21591-1-git-send-email-david.marchand@6wind.com>\n\t<1466086011-11920-1-git-send-email-shreyansh.jain@nxp.com>",
        "X-EOPAttributedMessage": "0",
        "X-Matching-Connectors": "131105596285027050;\n\t(91ab9b29-cfa4-454e-5278-08d120cd25b8); ()",
        "X-Forefront-Antispam-Report": "CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI;\n\tSFV:NSPM;\n\tSFS:(10009020)(6009001)(7916002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(229853001)(2950100001)(5003940100001)(77096005)(8936002)(92566002)(19580405001)(87936001)(68736007)(85426001)(69596002)(48376002)(19580395003)(50466002)(33646002)(50226002)(106466001)(86362001)(105606002)(575784001)(36756003)(586003)(97736004)(81156014)(81166006)(2906002)(11100500001)(110136002)(8676002)(189998001)(47776003)(6806005)(5890100001)(104016004)(5008740100001)(356003)(50986999)(76176999)(4326007)(2351001);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0301MB1626;\n\tH:az84smr01.freescale.net; \n\tFPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; CAT:NONE;\n\tLANG:en; CAT:NONE; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; BY2FFO11FD026;\n\t1:OcCNwbS/MMgk/JjH9ZGZ/42hYh9B9tBDL4nA9HRdI8ICJUv2IKngvhqwoV/epf13i95zGf975xY8FT2ghevpIadxbhgM3tHiBTtJAV2QBrw6a/AnkjifvDYXzzaaqV6X0mpjBUNHMI8GV4dECdekzamhyOHzBsLFQ6R66I/Ao0szuo+f8PjFIXtW2zzHiFTSo6MLTxV4ymnJkngccoTj0MotHsBmFhYIKnIfgEoXskRyvdA+E3AEiDREJA3RvLEEZzwHcMCviYjwJdWtIB98R3vQrc131Inrdk6jAKu+Wbr4YO3Xqe/jc/qK+X5W6JvByAVVkeO5Bbn0W70Zlu6IwCnw/xh3c+NkBJKlq8DevRCux+nuJwK4cOe1p/wP+TiZq70h75gH5tzIBXmNYc1sY4Hqpi+E4S4Fn5Jvx2/znfgjfueKYjNNdAM+DxQl9JuuURMiZbcFGqi/cFXO3k8mLYHvDRvtgXyL/u+14aeg+qcfmDllk7QFWYwuow/sjVWpFTj/cPvUmBMoPhdctlYiLvVLiRLvjXZpCqpzgsZoROCIzo5cSw9ykp/W2nEmixArXq8Hz85iWqNQKQK8aFXZjw==",
            "1; CY1PR0301MB1626;\n\t2:UBmi4izaFelkj+ygYSrIiY/XD9iAOQQe6XrNftz2hNJTn4bZZrJhqlKLnLYpuIJSwXFKfJ0x3b9PaluuZ2885rwa8EmsVGWYtmJtYUTHrZSr/ivEW9XTtURWE4uO9bBGd5rJAVjLLEy9lXt6rlY3GEggOhrU8EtUSuonVA5Autn5Ic8pTPKF6iRfC72wyvi/;\n\t3:16KSg8x3CrD05CJTX2jGWJ0YCasZgzvrhljkQHZ6sPCCDtqAW8KQUJU0bwlvibHgWAQW4GSWH63CwS+cYWjf9pQwyhq03pljcdIAadiGyB5dmBJ+kFeSlPJhsi7dcNZTOFrmmOi/oSoMW2aSYsyuoUNaj++DmfDJtjJ0TLYge6NKNAHy869DQw1WzLyAxSNbK68+vtagTCpUMUj0JMjbssmmW49pvpTM0UuKOG0Uo7c=;\n\t25:aD2mDz+mk7toNzqk0FAEMtaQJ7z1IvZwQlBnOBtXgHaQfzobzBjVfBwCbkZghdL+sq4iQY9CTOZuA4w/PmIXW/T4+NHd20W0jix6OYeU5696fwGBwFWFvicDUbIll75/1HWFZR+aBmBnkeUFAlTvrX7wGrqT/MK+YHWISWntubvLy8hGbTW5RGZ8YkDiNSNRexqNclLHaL7QQzXtnCoGsZ+C9rq2riLjPvWkrjYmED/VuUq+V5R0KKVeECQ9KJZ2niw88WtxTweGGJpyefDkoM+9BTR3dwd6/0tN0XHUQIR4ZTRUmeZDwyPTMR9PNgRwjZWREgfJYD2ABvWaakwwhLjbo3S9sxeqn5TObEXOeDoKMh1bqekhKkWYESYZKzXGHFNl6HkmaGDtAsJuud68lGvHViaAfsTaEis5esjMSfM=",
            "1; CY1PR0301MB1626;\n\t4:qmiulDzWduQLr6qGjYThk2gkowp8UFWvU4TyfGd9izAVKdJj+RFoqDZxjPp8QmLa6BEFog5kSNU9ED5/jm1fnxSoXENMswW3Eh/tk6QmZqOufA6lq3CvhcaCx2qH7+3otS3k4O1L4ud0cfYJdkFNT0XQXezf/hAClbfPhqlOknGb/iaR3MNEjaw0ebKZZjnPUc4+sZKRMsnfB4JCNsVgskat+xSbW/FNvSHKhvoCiCMqx9q4khanz95AI7NjjbXCx0ZRTbZhAnr3FEfHFrTWEm1gUHBpKSnZhArTP4rTgspV0s7zMJ1T1b1vLN3kIhM7xsUgpbLskjy4QHGxlT5Ftn+JTzpPxubH//f961pnCRDjmdh7D4UDquX5oSDjGek3I1v8TfAk/5uaJV1JYs1cK3UtblJ1OgeMHiqagbOXzos3KIu7LMYCOCVtcXrqG3eoQwo+n7tzj9IR7DstkI+zcLbE3VjVPiHiAIHNI7BuvqU=",
            "=?us-ascii?Q?1; CY1PR0301MB1626;\n\t23:2otPU2pbYR71IUZq8cXYtkXbMWxqrrLPyPPqBHh?=\n\t=?us-ascii?Q?iKcbkCzjgRha6NTWAgs5YtugxMWvtFjICjgYE4JOEePoveNF4RJsIUnVJy1w?=\n\t=?us-ascii?Q?hEXv16B29yUUjMNBpvsJ4s8sjC9BwU3uRw6z9imX2ipVDgxl8MHRJvPC3MAZ?=\n\t=?us-ascii?Q?yURUVKgSsqktrtK+limbszSAKhi97f+Sto2q0VHeD1KKWWzg1ewM6YdLmI/U?=\n\t=?us-ascii?Q?zt9E/eK8SZ3jZIc6I53TF10ml8V+81BpF+VtTXNtrr02nLsQHd2g73ybtyB1?=\n\t=?us-ascii?Q?bwMMd12fbMBVws8Aa7XYZuULcelgYoT2ySV2wOwYLlMKyaqQoXzfiSnaMI0U?=\n\t=?us-ascii?Q?Eu779I1s5dneQjrfy00jBZu1sbyhsO+22wbqMsGxEcHX14hYR0G6QtkRr6AT?=\n\t=?us-ascii?Q?K7JKEm8ob/BlG76JOgBFIYH0MjlDApi/t38V1PrgusJNNf5U5TuK/jxZpssc?=\n\t=?us-ascii?Q?m3MPNEQgVmGCs5DjdqmJg3IzYwdXFrBhukjh5M73zjpOOpEfp2BAsZJivSSz?=\n\t=?us-ascii?Q?YXQDYBkETwHnGHFuPWVN22QB75wEPuiIUlvGEh5O+3GgkTmDBdALDPyIzWy0?=\n\t=?us-ascii?Q?wIP4p9D4a5lhiK3ltqkX8HRhGYe2DTy6DW5H/5IM+4y0IvmFDK4ROMOnmQLF?=\n\t=?us-ascii?Q?gp37tSMgLLv89LZs3erXsikSTiOksIRq/3PEhKuoBwaNnzB2cNpfpREXEIHj?=\n\t=?us-ascii?Q?CTYbhyGjuv0V2ArRwP8Ny3g+DRbbrKl97hG1CqgTqAsW1wi/9WgQg0WISbys?=\n\t=?us-ascii?Q?FrHntcKrnRMvxcqciuLqfoieuJk1sa/gflzslmdLv0iwa6DFD2lFVo9EgsFD?=\n\t=?us-ascii?Q?tTyUo3wRg9EGY4aFTeJmdDyLZXPShJwh/FuSZ1gwU9IQoGIgPXygnAO7W0ml?=\n\t=?us-ascii?Q?iNq6/dk1Iy/LcYhah3vGa16bmHzee2e4rdEM5WVxJyBT8ys4e5nExCKYng3G?=\n\t=?us-ascii?Q?Dt9eaCysYoCXUbIVJkPIjJNknOncORr7LzcMIbq6K5ln0e057KN76FrtOKkb?=\n\t=?us-ascii?Q?fNTY44rHxwoqnhWV1noTeh9JFs/4LCGRJ2juTm1EWGa5M5beKTJmAGjSzvIH?=\n\t=?us-ascii?Q?VKeThha8QOd91y356z++TBDjuQWbGT9ggfuujTjzYFUUQHL2kG0sheZJdDC7?=\n\t=?us-ascii?Q?MvKZ0SGuDoX1EcSXOkivMQKeIQjDwTl/k1iSXcYkfQwx5nDO2U/DqABXms0O?=\n\t=?us-ascii?Q?C6K3FmzjHUcPBXxQ6YpNxUUd7BOD7XYO3HyIq?=",
            "1; CY1PR0301MB1626;\n\t6:vBf4ZqoZME3QgRaNWbcvQZYhbOxgMQ/CDC1xrZy+hb8lALL59BGuDYG+b63RgJp8B6xIo9kNdjF4qT2VKIRLeNZ/vtqFb78OEXdNWJMh0DxHs1GTc4YV2pCMitEQiwQf1ESsYtMEbeZ6dADuuQFeUnu7wkYBHeRSHGtxTEN0Dp57TxxsU1qDkn91+kWNIyD1mu/LyKnVua9Fcp5L34fHIoq1B9QlYh83D/v1n9E3bCUw/w37BC5CvAJ0cfHViOe3J/yVh2pQ/48gsHh+p1wKQRBm07XXZ1wsNVgRfd153qw=;\n\t5:vGYV13uDS6AA7X+hAsA+RfxSTOvxrC/Q17qqAgkPgwN41lssqLzmkDNmMOpGVxRzE8hyPU/fmJXWZByhYOVWejzdeevc6bMDmCgvUP84LPPnzL69dlxuN7HyyLApcwJxbnVSfNlESR1ISrNujWSvDvdDcXJzAUweqaFKhjFjUDQ=;\n\t24:E6lt3LOScwMUtZ1+KerPcmrrPiUKefLw0JdshEPZshPvKjPHlINdHp0GPWtvVVdI67/tNdnlz0RsUD4B+lXCIbMtqCQZZrrUs6+f7U4ZK3M=;\n\t7:zwnc1rEcUzr932YMTcncx/06TfiFO+X16hNaRwS9o/pOZlM7Ql+qZ52MZr8Vos6Ayfkec6sTRLQsyVASMZvFqXZDZiglnzN6l51iXUo1eSdwRzy2XWy5pYSbB6bHyqyUoZTDgsn86dRgBdPWjttFssgv2onITPwXqnRPY8MYddJpAEN4TMMug1rlZCbK6KKt0IyFq/t8vXnsX3YmbFUYzA=="
        ],
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-MS-Office365-Filtering-Correlation-Id": "cd587063-0942-4fc2-218a-08d395ef8117",
        "X-Microsoft-Antispam": "UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1626;",
        "X-Microsoft-Antispam-PRVS": "<CY1PR0301MB1626E48EBD730AA44816666F90560@CY1PR0301MB1626.namprd03.prod.outlook.com>",
        "X-Exchange-Antispam-Report-Test": "UriScan:;",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(601004)(2401047)(13018025)(13023025)(13017025)(13024025)(13015025)(8121501046)(5005006)(3002001)(10201501046)(6055026);\n\tSRVR:CY1PR0301MB1626; BCL:0; PCL:0; RULEID:(400006);\n\tSRVR:CY1PR0301MB1626; ",
        "X-Forefront-PRVS": "09752BC779",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "16 Jun 2016 14:07:08.3779\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-Id": "5afe0b00-7697-4969-b663-5eab37d5f47e",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e;\n\tIp=[192.88.158.2]; \n\tHelo=[az84smr01.freescale.net]",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY1PR0301MB1626",
        "Subject": "[dpdk-dev] [PATCH v3 14/17] ethdev: do not scan all pci devices on\n\tattach",
        "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": "From: David Marchand <david.marchand@6wind.com>\n\nNo need to scan all devices, we only need to update the device being\nattached.\n\nSigned-off-by: David Marchand <david.marchand@6wind.com>\n---\n lib/librte_eal/common/eal_common_pci.c | 11 ++++++++---\n lib/librte_ether/rte_ethdev.c          |  3 ---\n 2 files changed, 8 insertions(+), 6 deletions(-)",
    "diff": "diff --git a/lib/librte_eal/common/eal_common_pci.c b/lib/librte_eal/common/eal_common_pci.c\nindex dfd0a8c..d05dda4 100644\n--- a/lib/librte_eal/common/eal_common_pci.c\n+++ b/lib/librte_eal/common/eal_common_pci.c\n@@ -339,6 +339,11 @@ rte_eal_pci_probe_one(const struct rte_pci_addr *addr)\n \tif (addr == NULL)\n \t\treturn -1;\n \n+\t/* update current pci device in global list, kernel bindings might have\n+\t * changed since last time we looked at it */\n+\tif (pci_update_device(addr) < 0)\n+\t\tgoto err_return;\n+\n \tTAILQ_FOREACH(dev, &pci_device_list, next) {\n \t\tif (rte_eal_compare_pci_addr(&dev->addr, addr))\n \t\t\tcontinue;\n@@ -351,9 +356,9 @@ rte_eal_pci_probe_one(const struct rte_pci_addr *addr)\n \treturn -1;\n \n err_return:\n-\tRTE_LOG(WARNING, EAL, \"Requested device \" PCI_PRI_FMT\n-\t\t\t\" cannot be used\\n\", dev->addr.domain, dev->addr.bus,\n-\t\t\tdev->addr.devid, dev->addr.function);\n+\tRTE_LOG(WARNING, EAL,\n+\t\t\"Requested device \" PCI_PRI_FMT \" cannot be used\\n\",\n+\t\taddr->domain, addr->bus, addr->devid, addr->function);\n \treturn -1;\n }\n \ndiff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c\nindex 5bcf610..a496521 100644\n--- a/lib/librte_ether/rte_ethdev.c\n+++ b/lib/librte_ether/rte_ethdev.c\n@@ -463,9 +463,6 @@ rte_eth_dev_is_detachable(uint8_t port_id)\n static int\n rte_eth_dev_attach_pdev(struct rte_pci_addr *addr, uint8_t *port_id)\n {\n-\t/* re-construct pci_device_list */\n-\tif (rte_eal_pci_scan())\n-\t\tgoto err;\n \t/* Invoke probe func of the driver can handle the new device. */\n \tif (rte_eal_pci_probe_one(addr))\n \t\tgoto err;\n",
    "prefixes": [
        "dpdk-dev",
        "v3",
        "14/17"
    ]
}