get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 10053,
    "url": "http://patches.dpdk.org/api/patches/10053/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1453476464-31767-9-git-send-email-david.marchand@6wind.com/",
    "project": {
        "id": 1,
        "url": "http://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": "<1453476464-31767-9-git-send-email-david.marchand@6wind.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1453476464-31767-9-git-send-email-david.marchand@6wind.com",
    "date": "2016-01-22T15:27:43",
    "name": "[dpdk-dev,8/9] pci: remove driver lookup from detach",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "2e1a32bf4af91c74434aea8a52e3f571fe6adca0",
    "submitter": {
        "id": 3,
        "url": "http://patches.dpdk.org/api/people/3/?format=api",
        "name": "David Marchand",
        "email": "david.marchand@6wind.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1453476464-31767-9-git-send-email-david.marchand@6wind.com/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/10053/comments/",
    "check": "pending",
    "checks": "http://patches.dpdk.org/api/patches/10053/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 BA6679200;\n\tFri, 22 Jan 2016 16:28:03 +0100 (CET)",
            "from mail-wm0-f52.google.com (mail-wm0-f52.google.com\n\t[74.125.82.52]) by dpdk.org (Postfix) with ESMTP id 31ABD8EA0\n\tfor <dev@dpdk.org>; Fri, 22 Jan 2016 16:28:00 +0100 (CET)",
            "by mail-wm0-f52.google.com with SMTP id b14so137762500wmb.1\n\tfor <dev@dpdk.org>; Fri, 22 Jan 2016 07:28:00 -0800 (PST)",
            "from gloops.dev.6wind.com (144.77.126.78.rev.sfr.net.\n\t[78.126.77.144]) by smtp.gmail.com with ESMTPSA id\n\tw73sm3359464wmw.21.2016.01.22.07.27.59\n\t(version=TLSv1/SSLv3 cipher=OTHER);\n\tFri, 22 Jan 2016 07:27:59 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=6wind-com.20150623.gappssmtp.com; s=20150623;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=I/eY/Sq0U9uteqQ2BUwA6WGAplsPimU60HzC5V3vZlY=;\n\tb=jIZQfm2aqcysMDi6BSkfIt0wenx5bItehnaZLxJrqV//0BIIollvzznbZlBXJioDV1\n\tgqv10v/RoJ4nBI6jlHb4DjMPOqFyyUVA9UYzY6g+1XXUlu5Lrlpglp23sIXKryN4Pgby\n\tesY88CZQ3yS4ShA5dOBHC0VvjwLV3iX3RmMvMd8ZxAfnh6eGKwCFDZWd37OJS/Wo7XYx\n\tGKN5/nBfr3E/1NKg5TWb8XtlWAwYQxanLTxYcz0C+z5gGjDCSFyxJpBqPt7lsOiODvh+\n\tcABNhV/JqqwwysTrjOcHmU7bDArUD95wQ/P/m2nAKUQQLBni/IGHUFiJ6dmolU6PeZqf\n\trltw==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=I/eY/Sq0U9uteqQ2BUwA6WGAplsPimU60HzC5V3vZlY=;\n\tb=U3x04OIHN1NQ1t7AEtLVVx2kPfTmwCJV4kFdeJajxHm8SnF8iruKxB3JDdCC86/Tyo\n\t6/EMWA+SIq7HD6xXXWER0b7nu5Fh/G3x7YSboCl60Xots3BpQP8ePbEhCQyKQIqJTPfN\n\tdNQ/4xOubA40oL/BVWtkZTc7zAiDugY1KSiJsG+/6rXA8CyOtl2TjS+53kl7hycN6yLi\n\tt/5KiHWwS2oh6fEEWNJS7Y84pDlEVVOsotRQw96xcM9ORTZn1NSFwjAmH1EnM284TSkc\n\tWlPTQfWz+VbfPoj3vZDLW2KTGHx/8xqCi3VMmhAn6BV1/c3I55MoRSvWPkj7qhZZYvAB\n\tsUuw==",
        "X-Gm-Message-State": "AG10YOSFfd6a7J8Mu50kO8QOwt3AkDtiie4WszNnPAmnrAxjlM3s0Q5/wUMCIwa87x3EQX31",
        "X-Received": "by 10.194.209.129 with SMTP id mm1mr4155488wjc.47.1453476480086; \n\tFri, 22 Jan 2016 07:28:00 -0800 (PST)",
        "From": "David Marchand <david.marchand@6wind.com>",
        "To": "dev@dpdk.org",
        "Date": "Fri, 22 Jan 2016 16:27:43 +0100",
        "Message-Id": "<1453476464-31767-9-git-send-email-david.marchand@6wind.com>",
        "X-Mailer": "git-send-email 1.9.1",
        "In-Reply-To": "<1453476464-31767-1-git-send-email-david.marchand@6wind.com>",
        "References": "<1453476464-31767-1-git-send-email-david.marchand@6wind.com>",
        "Cc": "viktorin@rehivetech.com",
        "Subject": "[dpdk-dev] [PATCH 8/9] pci: remove driver lookup from detach",
        "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": "A device is linked to a driver at probe time.\nWhen detaching, we should call this same driver detach() function and no\nneed for a driver lookup.\n\nSigned-off-by: David Marchand <david.marchand@6wind.com>\n---\n lib/librte_eal/common/eal_common_pci.c | 25 ++++++++++---------------\n 1 file changed, 10 insertions(+), 15 deletions(-)",
    "diff": "diff --git a/lib/librte_eal/common/eal_common_pci.c b/lib/librte_eal/common/eal_common_pci.c\nindex a1efd57..71222a5 100644\n--- a/lib/librte_eal/common/eal_common_pci.c\n+++ b/lib/librte_eal/common/eal_common_pci.c\n@@ -256,16 +256,9 @@ pci_probe_device(struct rte_pci_driver *dr, struct rte_pci_device *dev)\n  * driver.\n  */\n static int\n-pci_detach_device(struct rte_pci_driver *dr, struct rte_pci_device *dev)\n+pci_detach_device(struct rte_pci_device *dev)\n {\n-\tstruct rte_pci_addr *loc = &dev->addr;\n-\n-\tRTE_LOG(DEBUG, EAL, \"PCI device \"PCI_PRI_FMT\" on NUMA socket %i\\n\",\n-\t\tloc->domain, loc->bus, loc->devid,\n-\t\tloc->function, dev->numa_node);\n-\n-\tRTE_LOG(DEBUG, EAL, \"  remove driver: %x:%x %s\\n\", dev->id.vendor_id,\n-\t\tdev->id.device_id, dr->name);\n+\tstruct rte_pci_driver *dr = dev->driver;\n \n \tif (dr->devuninit && (dr->devuninit(dev) < 0))\n \t\treturn -1;\t/* negative value is an error */\n@@ -332,20 +325,22 @@ int\n rte_eal_pci_detach(const struct rte_pci_addr *addr)\n {\n \tstruct rte_pci_device *dev;\n-\tstruct rte_pci_driver *dr;\n \n \tif (addr == NULL)\n \t\treturn -1;\n \n \tdev = pci_find_device(addr);\n-\tif (!dev)\n+\tif (!dev || !dev->driver)\n \t\tgoto err_return;\n \n-\tdr = pci_find_driver(dev);\n-\tif (!dr)\n-\t\tgoto err_return;\n+\tRTE_LOG(DEBUG, EAL, \"PCI device \"PCI_PRI_FMT\" on NUMA socket %i\\n\",\n+\t\tdev->addr.domain, dev->addr.bus, dev->addr.devid,\n+\t\tdev->addr.function, dev->numa_node);\n+\n+\tRTE_LOG(DEBUG, EAL, \"  remove driver: %x:%x %s\\n\", dev->id.vendor_id,\n+\t\tdev->id.device_id, dev->driver->name);\n \n-\tif (pci_detach_device(dr, dev) < 0)\n+\tif (pci_detach_device(dev) < 0)\n \t\tgoto err_return;\n \n \tTAILQ_REMOVE(&pci_device_list, dev, next);\n",
    "prefixes": [
        "dpdk-dev",
        "8/9"
    ]
}