Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.0/patches/1759/?format=api
http://patchwork.dpdk.org/api/1.0/patches/1759/?format=api", "project": { "id": 1, "url": "http://patchwork.dpdk.org/api/1.0/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" }, "msgid": "<1417703181-23093-3-git-send-email-jean-mickael.guerin@6wind.com>", "date": "2014-12-04T14:26:21", "name": "[dpdk-dev,2/2] ixgbe: don't override mbuf buffer length", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "6bfea40cd766a4a8928623a5003ee1caeaa5d9b9", "submitter": { "id": 128, "url": "http://patchwork.dpdk.org/api/1.0/people/128/?format=api", "name": "Jean-Mickael Guerin", "email": "jean-mickael.guerin@6wind.com" }, "delegate": null, "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/1417703181-23093-3-git-send-email-jean-mickael.guerin@6wind.com/mbox/", "series": [], "check": "pending", "checks": "http://patchwork.dpdk.org/api/patches/1759/checks/", "tags": {}, "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 179D5804A;\n\tThu, 4 Dec 2014 15:27:02 +0100 (CET)", "from smtp-ft2.fr.colt.net (smtp-ft2.fr.colt.net [213.41.78.204])\n\tby dpdk.org (Postfix) with ESMTP id AF729803E\n\tfor <dev@dpdk.org>; Thu, 4 Dec 2014 15:26:59 +0100 (CET)", "from smtp-ex4.fr.colt.net (smtp-ex4.fr.colt.net [213.41.78.193])\n\tby smtp-ft2.fr.colt.net (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id\n\tsB4EQs5W008680 for <dev@dpdk.org>; Thu, 4 Dec 2014 15:26:54 +0100", "from 33.106-14-84.ripe.coltfrance.com ([84.14.106.33]\n\thelo=proxy.6wind.com) by smtp-ex4.fr.colt.net with esmtp (Exim)\n\t(envelope-from <jean-mickael.guerin@6wind.com>) id 1XwXMv-0002F2-0h\n\tfor <dev@dpdk.org>; Thu, 04 Dec 2014 15:26:58 +0100", "from 6wind.com (unknown [10.16.0.122])\n\tby proxy.6wind.com (Postfix) with SMTP id 02FE859FBF;\n\tThu, 4 Dec 2014 15:26:57 +0100 (CET)", "by 6wind.com (sSMTP sendmail emulation);\n\tThu, 04 Dec 2014 15:26:57 +0100" ], "From": "Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>", "To": "dev@dpdk.org", "Date": "Thu, 4 Dec 2014 15:26:21 +0100", "Message-Id": "<1417703181-23093-3-git-send-email-jean-mickael.guerin@6wind.com>", "X-Mailer": "git-send-email 2.1.3", "In-Reply-To": "<1417703181-23093-1-git-send-email-jean-mickael.guerin@6wind.com>", "References": "<1417703181-23093-1-git-send-email-jean-mickael.guerin@6wind.com>", "X-ACL-Warn": "1/1 recipients OK.", "Subject": "[dpdk-dev] [PATCH 2/2] ixgbe: don't override mbuf buffer length", "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": "The template mbuf_initializer is hard coded with a buflen which\nmight have been set differently by the application at the time of\nmbuf pool creation.\n\nSwitch to a mbuf allocation, to fetch the correct default values.\nThere is no performance impact because this is not a data-plane API.\n\nSigned-off-by: Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>\nAcked-by: David Marchand <david.marchand@6wind.com>\nFixes: 0ff3324da2 (\"ixgbe: rework vector pmd following mbuf changes\")\n---\n lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c | 19 ++++++++++++-------\n 1 file changed, 12 insertions(+), 7 deletions(-)", "diff": "diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c\nindex c1b5a78..f7b02f5 100644\n--- a/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c\n+++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c\n@@ -732,17 +732,22 @@ static struct ixgbe_txq_ops vec_txq_ops = {\n int\n ixgbe_rxq_vec_setup(struct igb_rx_queue *rxq)\n {\n-\tstruct rte_mbuf mb_def = { .buf_addr = 0 }; /* zeroed mbuf */\n+\tstruct rte_mbuf *mb_def;\n \n-\tmb_def.nb_segs = 1;\n-\tmb_def.data_off = RTE_PKTMBUF_HEADROOM;\n-\tmb_def.buf_len = rxq->mb_pool->elt_size - sizeof(struct rte_mbuf);\n-\tmb_def.port = rxq->port_id;\n-\trte_mbuf_refcnt_set(&mb_def, 1);\n+\tmb_def = rte_pktmbuf_alloc(rxq->mb_pool);\n+\tif (mb_def == NULL) {\n+\t\tPMD_INIT_LOG(ERR, \"ixgbe_rxq_vec_setup: could not allocate one mbuf\");\n+\t\treturn -1;\n+\t}\n+\t/* nb_segs, refcnt, data_off and buf_len are already set */\n+\tmb_def->port = rxq->port_id;\n \n \t/* prevent compiler reordering: rearm_data covers previous fields */\n \trte_compiler_barrier();\n-\trxq->mbuf_initializer = *((uint64_t *)&mb_def.rearm_data);\n+\trxq->mbuf_initializer = *((uint64_t *)&mb_def->rearm_data);\n+\n+\trte_pktmbuf_free(mb_def);\n+\n \treturn 0;\n }\n \n", "prefixes": [ "dpdk-dev", "2/2" ] }{ "id": 1759, "url": "