get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 3573,
    "url": "http://patches.dpdk.org/api/patches/3573/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1424451827-32293-2-git-send-email-john.mcnamara@intel.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": "<1424451827-32293-2-git-send-email-john.mcnamara@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1424451827-32293-2-git-send-email-john.mcnamara@intel.com",
    "date": "2015-02-20T17:03:45",
    "name": "[dpdk-dev,v5,1/3] ethdev: rename callbacks field to link_intr_cbs",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "cb393af611af76e90f2add707e28b4771bcac633",
    "submitter": {
        "id": 154,
        "url": "http://patches.dpdk.org/api/people/154/?format=api",
        "name": "John McNamara",
        "email": "john.mcnamara@intel.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1424451827-32293-2-git-send-email-john.mcnamara@intel.com/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/3573/comments/",
    "check": "pending",
    "checks": "http://patches.dpdk.org/api/patches/3573/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 25983B7E7;\n\tFri, 20 Feb 2015 18:04:07 +0100 (CET)",
            "from mga09.intel.com (mga09.intel.com [134.134.136.24])\n\tby dpdk.org (Postfix) with ESMTP id 842B4B771\n\tfor <dev@dpdk.org>; Fri, 20 Feb 2015 18:04:01 +0100 (CET)",
            "from orsmga003.jf.intel.com ([10.7.209.27])\n\tby orsmga102.jf.intel.com with ESMTP; 20 Feb 2015 08:59:52 -0800",
            "from irvmail001.ir.intel.com ([163.33.26.43])\n\tby orsmga003.jf.intel.com with ESMTP; 20 Feb 2015 08:55:12 -0800",
            "from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com\n\t[10.237.217.46])\n\tby irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\tt1KH3scd000417; Fri, 20 Feb 2015 17:03:54 GMT",
            "from sivswdev02.ir.intel.com (localhost [127.0.0.1])\n\tby sivswdev02.ir.intel.com with ESMTP id t1KH3suA032345;\n\tFri, 20 Feb 2015 17:03:54 GMT",
            "(from jmcnam2x@localhost)\n\tby sivswdev02.ir.intel.com with  id t1KH3sc1032341;\n\tFri, 20 Feb 2015 17:03:54 GMT"
        ],
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.09,615,1418112000\"; d=\"scan'208\";a=\"530446438\"",
        "From": "John McNamara <john.mcnamara@intel.com>",
        "To": "dev@dpdk.org",
        "Date": "Fri, 20 Feb 2015 17:03:45 +0000",
        "Message-Id": "<1424451827-32293-2-git-send-email-john.mcnamara@intel.com>",
        "X-Mailer": "git-send-email 1.7.4.1",
        "In-Reply-To": "<1424451827-32293-1-git-send-email-john.mcnamara@intel.com>",
        "References": "<1424281343-2994-1-git-send-email-john.mcnamara@intel.com>\n\t<1424451827-32293-1-git-send-email-john.mcnamara@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v5 1/3] ethdev: rename callbacks field to\n\tlink_intr_cbs",
        "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: Richardson, Bruce <bruce.richardson@intel.com>\n\nThe 'callbacks' member of the rte_eth_dev structure has been renamed\nto 'link_intr_cbs' to make it clear that it refers to callbacks from\nNIC interrupts. This allows us to add other types of callbacks to\nthe structure without ambiguity.\n\nSigned-off-by: Bruce Richardson <bruce.richardson@intel.com>\nSigned-off-by: John McNamara <john.mcnamara@intel.com>\n---\n app/test/virtual_pmd.c                 |    2 +-\n lib/librte_ether/rte_ethdev.c          |   12 ++++++------\n lib/librte_ether/rte_ethdev.h          |    2 +-\n lib/librte_pmd_bond/rte_eth_bond_api.c |    2 +-\n lib/librte_pmd_ring/rte_eth_ring.c     |    2 +-\n 5 files changed, 10 insertions(+), 10 deletions(-)",
    "diff": "diff --git a/app/test/virtual_pmd.c b/app/test/virtual_pmd.c\nindex 9fac95d..eb75846 100644\n--- a/app/test/virtual_pmd.c\n+++ b/app/test/virtual_pmd.c\n@@ -576,7 +576,7 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,\n \teth_dev->data->nb_rx_queues = (uint16_t)1;\n \teth_dev->data->nb_tx_queues = (uint16_t)1;\n \n-\tTAILQ_INIT(&(eth_dev->callbacks));\n+\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n \n \teth_dev->data->dev_link.link_status = 0;\n \teth_dev->data->dev_link.link_speed = ETH_LINK_SPEED_10000;\ndiff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c\nindex 17be2f3..7c4e772 100644\n--- a/lib/librte_ether/rte_ethdev.c\n+++ b/lib/librte_ether/rte_ethdev.c\n@@ -265,7 +265,7 @@ rte_eth_dev_init(struct rte_pci_driver *pci_drv,\n \teth_dev->data->rx_mbuf_alloc_failed = 0;\n \n \t/* init user callbacks */\n-\tTAILQ_INIT(&(eth_dev->callbacks));\n+\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n \n \t/*\n \t * Set the default MTU.\n@@ -2743,7 +2743,7 @@ rte_eth_dev_callback_register(uint8_t port_id,\n \tdev = &rte_eth_devices[port_id];\n \trte_spinlock_lock(&rte_eth_dev_cb_lock);\n \n-\tTAILQ_FOREACH(user_cb, &(dev->callbacks), next) {\n+\tTAILQ_FOREACH(user_cb, &(dev->link_intr_cbs), next) {\n \t\tif (user_cb->cb_fn == cb_fn &&\n \t\t\tuser_cb->cb_arg == cb_arg &&\n \t\t\tuser_cb->event == event) {\n@@ -2757,7 +2757,7 @@ rte_eth_dev_callback_register(uint8_t port_id,\n \t\tuser_cb->cb_fn = cb_fn;\n \t\tuser_cb->cb_arg = cb_arg;\n \t\tuser_cb->event = event;\n-\t\tTAILQ_INSERT_TAIL(&(dev->callbacks), user_cb, next);\n+\t\tTAILQ_INSERT_TAIL(&(dev->link_intr_cbs), user_cb, next);\n \t}\n \n \trte_spinlock_unlock(&rte_eth_dev_cb_lock);\n@@ -2784,7 +2784,7 @@ rte_eth_dev_callback_unregister(uint8_t port_id,\n \trte_spinlock_lock(&rte_eth_dev_cb_lock);\n \n \tret = 0;\n-\tfor (cb = TAILQ_FIRST(&dev->callbacks); cb != NULL; cb = next) {\n+\tfor (cb = TAILQ_FIRST(&dev->link_intr_cbs); cb != NULL; cb = next) {\n \n \t\tnext = TAILQ_NEXT(cb, next);\n \n@@ -2798,7 +2798,7 @@ rte_eth_dev_callback_unregister(uint8_t port_id,\n \t\t * then remove it.\n \t\t */\n \t\tif (cb->active == 0) {\n-\t\t\tTAILQ_REMOVE(&(dev->callbacks), cb, next);\n+\t\t\tTAILQ_REMOVE(&(dev->link_intr_cbs), cb, next);\n \t\t\trte_free(cb);\n \t\t} else {\n \t\t\tret = -EAGAIN;\n@@ -2817,7 +2817,7 @@ _rte_eth_dev_callback_process(struct rte_eth_dev *dev,\n \tstruct rte_eth_dev_callback dev_cb;\n \n \trte_spinlock_lock(&rte_eth_dev_cb_lock);\n-\tTAILQ_FOREACH(cb_lst, &(dev->callbacks), next) {\n+\tTAILQ_FOREACH(cb_lst, &(dev->link_intr_cbs), next) {\n \t\tif (cb_lst->cb_fn == NULL || cb_lst->event != event)\n \t\t\tcontinue;\n \t\tdev_cb = *cb_lst;\ndiff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h\nindex 6e454e8..48e4ac9 100644\n--- a/lib/librte_ether/rte_ethdev.h\n+++ b/lib/librte_ether/rte_ethdev.h\n@@ -1539,7 +1539,7 @@ struct rte_eth_dev {\n \tconst struct eth_driver *driver;/**< Driver for this device */\n \tstruct eth_dev_ops *dev_ops;    /**< Functions exported by PMD */\n \tstruct rte_pci_device *pci_dev; /**< PCI info. supplied by probing */\n-\tstruct rte_eth_dev_cb_list callbacks; /**< User application callbacks */\n+\tstruct rte_eth_dev_cb_list link_intr_cbs; /**< User application callbacks on interrupt*/\n };\n \n struct rte_eth_dev_sriov {\ndiff --git a/lib/librte_pmd_bond/rte_eth_bond_api.c b/lib/librte_pmd_bond/rte_eth_bond_api.c\nindex 4ab3267..077cb73 100644\n--- a/lib/librte_pmd_bond/rte_eth_bond_api.c\n+++ b/lib/librte_pmd_bond/rte_eth_bond_api.c\n@@ -251,7 +251,7 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id)\n \teth_dev->data->nb_rx_queues = (uint16_t)1;\n \teth_dev->data->nb_tx_queues = (uint16_t)1;\n \n-\tTAILQ_INIT(&(eth_dev->callbacks));\n+\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n \n \teth_dev->data->dev_link.link_status = 0;\n \ndiff --git a/lib/librte_pmd_ring/rte_eth_ring.c b/lib/librte_pmd_ring/rte_eth_ring.c\nindex a23e933..a5dc71e 100644\n--- a/lib/librte_pmd_ring/rte_eth_ring.c\n+++ b/lib/librte_pmd_ring/rte_eth_ring.c\n@@ -340,7 +340,7 @@ rte_eth_from_rings(const char *name, struct rte_ring *const rx_queues[],\n \teth_dev->driver = eth_drv;\n \teth_dev->dev_ops = &ops;\n \teth_dev->pci_dev = pci_dev;\n-\tTAILQ_INIT(&(eth_dev->callbacks));\n+\tTAILQ_INIT(&(eth_dev->link_intr_cbs));\n \n \t/* finally assign rx and tx ops */\n \teth_dev->rx_pkt_burst = eth_ring_rx;\n",
    "prefixes": [
        "dpdk-dev",
        "v5",
        "1/3"
    ]
}