Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/22030/?format=api
https://patches.dpdk.org/api/patches/22030/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/20170320233804.47489-1-yskoh@mellanox.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": "<20170320233804.47489-1-yskoh@mellanox.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20170320233804.47489-1-yskoh@mellanox.com", "date": "2017-03-20T23:38:04", "name": "[dpdk-dev] net/mlx5: fix reusing Rx/Tx queues", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "87a7e69ac748e2a50b1b7db1b386ca5ea5d37d0f", "submitter": { "id": 636, "url": "https://patches.dpdk.org/api/people/636/?format=api", "name": "Yongseok Koh", "email": "yskoh@mellanox.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/20170320233804.47489-1-yskoh@mellanox.com/mbox/", "series": [], "comments": "https://patches.dpdk.org/api/patches/22030/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/22030/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 67D532BF2;\n\tTue, 21 Mar 2017 00:38:18 +0100 (CET)", "from EUR03-AM5-obe.outbound.protection.outlook.com\n\t(mail-eopbgr30080.outbound.protection.outlook.com [40.107.3.80])\n\tby dpdk.org (Postfix) with ESMTP id 30605133F;\n\tTue, 21 Mar 2017 00:38:17 +0100 (CET)", "from mellanox.com (12.250.235.110) by\n\tAM5PR0501MB2449.eurprd05.prod.outlook.com (10.169.149.151) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.977.11;\n\tMon, 20 Mar 2017 23:38:14 +0000" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com;\n\ts=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=vZNs03Mq7LadAw/ofxHvzINyCLnuGUl+Qs2k3Hro5Rg=;\n\tb=rOaKVnlnG0b9jC4UCibVItQaNnb84RnJYIFIF9hF1jnoM9ybPgfd/jjOFhkWU8/zexvcQW5Z00YIyTRYq7O+hy7X/YegT3oymcFcxlXmX9RIOvzemWAylAQ9SSfHb5Qfoqyaq8RWhfU5J580LhLjC8+6oeCzWvYCj79cpH54YvU=", "Authentication-Results": "intel.com; dkim=none (message not signed)\n\theader.d=none; intel.com;\n\tdmarc=none action=none header.from=mellanox.com; ", "From": "Yongseok Koh <yskoh@mellanox.com>", "To": "<ferruh.yigit@intel.com>", "CC": "<dev@dpdk.org>, <adrien.mazarguil@6wind.com>,\n\t<nelio.laranjeiro@6wind.com>, Yongseok Koh <yskoh@mellanox.com>,\n\t<stable@dpdk.org>", "Date": "Mon, 20 Mar 2017 16:38:04 -0700", "Message-ID": "<20170320233804.47489-1-yskoh@mellanox.com>", "X-Mailer": "git-send-email 2.11.0", "MIME-Version": "1.0", "Content-Type": "text/plain", "X-Originating-IP": "[12.250.235.110]", "X-ClientProxiedBy": "BN6PR11CA0017.namprd11.prod.outlook.com (10.172.17.27) To\n\tAM5PR0501MB2449.eurprd05.prod.outlook.com (10.169.149.151)", "X-MS-Office365-Filtering-Correlation-Id": "afbf798e-176d-47d2-3499-08d46fea2e88", "X-MS-Office365-Filtering-HT": "Tenant", "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081);\n\tSRVR:AM5PR0501MB2449; ", "X-Microsoft-Exchange-Diagnostics": [ "1; AM5PR0501MB2449;\n\t3:zFJHM/MnUBIRSLQZ4uHlAE/Bquyp8YcAemhvXbE3KgvkfhQXS5D6g8TnoiV35XRHhre/9IKcE6fJJTfDqFGVyYeZxz1Ifc14nDCzenYLJZ1M9JFqKNLl32F7oO6KZlU1z/NR04CIeKaHfsnIy8Kj8mi+Ne+H6TJcticamLnJsH/IwTvp01TXcpcmX6dCMRbXKfdDexLFNuPFj6JVko0dWoH+A286WD/dq7Ztbt3jrdpqoUInTQFVkAxKnfJFA2VCJzkIPcB293irefuquV7nWnmmkFzXDS5C8SKYjpLcx+s=;\n\t25:s8icW7SKmdEjTtDGISYzHcxy3IudDBd6OFJ9w3okl3NsDOFfJx/K6Z4YJ+BnhnaQLcDcGKB3taWDavYB0XON83sK4ewuCnhxNaRisj+sMyUCOAnK5NRoccJRVy829EkEIaneab+47xdeaRNu7WK3HunS3+Crm+xq0fVuSvJBd1sXRSAhQPbE6+vf6NN3CQnwgr0I8a3k/6o9shmb1Qnh6Ht5c4R3AHsc7qH+pd1GDfEaXh9JVHrwz5Ne23lW4pEkHPwUsGtV0+rn4roztbZSTzw0iyvtVy2XRUa6mIb0viupS6Xo52NB68Og+X7D/k3d9w4WAhK0aVmsTXbVdcZDdAPV33vEOsdbk+fThvxmJLs+R1z74DSOf8k+jxxbVyT2EJqsB1CDoTr62v8wqNRL9tScsNJ3eA09XBJqRgP7fCKjDk1YeAc2DkahC88lhUr5TzcL2fYjfHmFzf1/aAjDyQ==", "1; AM5PR0501MB2449;\n\t31:E/P6RYEup7DzUMKiDLPri3cZT/bMk4euenCdDw4eCxNtIA/w3rryn+LJchY4QwO+s+3ZdP6rlw88UcctAhim+oTdZGqH+Jg+wyEXui+P7t/oIw43RuMvnBtse1yVNq+tOWMq7jq6HupOA1Eo0Pd4nHNnjFJDhJghdfS33FfVFts92amvRHtDpYiXZ9hj4DfzbukskLq8sHxmNSGs5p5E6KGt1V09sp9QGy66Kpv8C9uaocJvuMTD9QVRmcCr0cQh+96UMFbR/Tom8Y96Xzn0Yg==;\n\t20:tJTyktUdilKY8fswcPcMZKKij9IY4gCaTDCYCZJujIkmKcUFB1OB15UWSjhqH4UHdaDDSEEzN127CUeCcHVCpehVac6cshRdE7ZH8W7ic3dxy3YIKmKuvgMgihiVzbdEQmwXpOS7kU4WgfvwPqzKgVQ5oL0M0B95kRedsaPaICn5HNl4plzJCcAN+Y5ULd/sFvf9KNc0P9vhDrQRUn8u1vKCg8wHQRjC951VoRYDDyCf7wT8XkQ1e4FoOowACdyAD9P3TeJaPerWtMw+C3nooTYUaPEtxS4RyQUkAhk8LWe1MY4VJa4MBUjj8nYFzzehL7xOcutLcAkhhg66FUPXNM16bVT4gz9vvp3sMNEJ/PfgFVdyBLHksznDsueRtaBRaJYzplbZDCUj3jw2pdRLSjsNwCADDa4ihQ94SmdFm/7LlLNGUBgmVLhB1HfHqE8hoIrukE7y7xBw7v/h4vQ0MOZI8UKdqRNAcZ3Vq8RqkuBIzQCAlrSX6ekrlsZ6geCH", "1; AM5PR0501MB2449;\n\t4:SzKqRFAeYxTUx5g2s0oxOgA6FXQhawSeX20O2MUJuhigyUCUO2oJfan2VFf4tAxyHd9EJUcBt4nzvn4OseK/NU00q2KZ3F+ck1IkbFGM5qyXWc/LEf931Vc5yT4PRL9FeaoaEwcaKtIz0SszVQqYhXxGfmNtJ55JhmbbJdxykZBI3xaewdPFmhrEWfvmTuj9B45g8jzdtS6Ti2xiZ963Bqw7ih83zPOqBqkf9MwDx+wDhxWPy36DAE0Rw7HnRq8VWB0reJ6tGP9c9ORZY50pR+Pzs9g75hSY7Iz/NLxet0rsST+oHhGBXRUv9SLET/7sGqD9bSVxBTUqSFh/qxp7fZa5cqVDywzRg20I4bMuhVhGZsDy6U0d84sqflt+wR6g8tSqC07dmb80EVN+DGUwQLs2TJKksCXRJC2NcxBTS/swcGe97PJyTcBLC1bZwVbdj8pJOYOh9rrUkLDYtJnyZcLEATFBvV1eb343Z1fdluZil4RSMPt4q9YFrcTGFmDZm9sBnW41AtfVeAkUbmJ0ujLvwnK299BwNPGjCmFjEhhpbALLQI2kLN+p8zGC+ZscmAAjBBIT9mOyXMpfmR0h53hBP3wuivRnjPffWXoHdoblaopXthemyIXkSTTfhOI6", "=?us-ascii?Q?1; AM5PR0501MB2449;\n\t23:Z3rG4Yd4Sznej39i7alqMnei07iSRxzFrXzdJ7N?=\n\txHQhEl9PWGttc33h+LRzx5haOMXUPwGXyxyo+WgubqdwzU/Cf73to8srJfFlPXuGXdFOvsrKJov+xRT6RLlvTx9qxdyC/DFULKJfFTpdXgE125c4gTzu1XjRkkLRRT6Y4oWiaUWnpT/WA9U84YUK/I31m/cSQklj2qsUF6EyE16owz2H05TiGrAf6NDej+mjBWHjqymRoZV/my2l0ax5Ku0kXC64FcVRpIjTInMbgQc9BnrYO2HYPImMDpYS3C5ms1nJTuhf98AIOvlH8ANIiABaOc2KCBpYBrOZktovrBzuIEgfUT8o5iEeWCRE7R1P6KPJ8MoFwapCGe7ulZCh9AElPQmoTCEy2romAqv2brISyYhohQxKjV94/zLjW5naJKVNzYISp2SCc5ZYRAtEiY8PHGbzKIiFIKOxaWL993r5hqXbMyeLTAGJG2aglIA5KfMUEen/BPM2pYJDZjmcw2vxBnJDbjeZrX+1Bb0Yoh3fg2HKZHROrIErJ4BEi2ZiSzGVi7eqq1RGjD/k3xxXj5eHPRBR6V9LX+dccnT/wPQiMxT+4twJoD5SjRZ4IStoyP9JVpWEuVHoYquLfH0C6fwAByv8tx3wmJus43KqzHwMgaZ5mVco+ncK1HyVMsvbJx0mtX5iwN8VRoRqmxNeJzroMzVblIbIuaMwpO3+VQHfAjV0T/LwTdhNlKl/1mqBEDLQJDJAFnJBc/x4oYJxCm7SH70082dpuUBf1sbaq7LwQiqCMwYCuV54qDmoJFGidyxELXomMDkM6ucNvLM0gfaXGE+jZcF16goFOcBHqAktg3jqhiEASwDZTSnaQzZs/Y5UurApOePVC5JD/F/G8DKGRT8qEaXjcSCuZxKIY/XYTDYL7TIPPBgd4L0UJJPhIyYbPVCRoTkPm6TgHEx1LfRPFTnIuw5Bicx6sVd9x2U6IN0xq1WESkBMsFhp1KK4TfqgdijuwhE9u2Pmmd1+HiIo0", "1; AM5PR0501MB2449;\n\t6:PNJ+w8EUzgz8+zKJQ0CSIYo6ihH9gcc3tk4rLo+vpvA6NUQHUvCX18toiAUeOmoUeqlnKRYH9XiiUmWDJ38Sjd4kcdbQAqQSNFuasEdAivJR8VkUedAkQY7CZK8E9/cI3w7EbMe5/QZ5twX/y0gTGXtWiSTUXJ6CXNEuLDWywVZM3i1r4jmwU6mfmi11+xUtHG5WRIiVXBtut2QIuL9Q3+SB47NBTzpz8a70p/r5NGBZthZdyXKR6xYWhvPJRWXlc+uDpNFlT+l2ih3rueX0wifg8Auott4zXyjN4iu4k07d7vIp0A80HkmD6qrnnKgle1s6GnlWHufhu+T8uz2zXR10qsGIM/911rG0zmkzpuZU9Hpe2JKm18YbMNUizfJBS4CTI/tEZwev45E+kqTzyuX5MUtWnIkQjeJ3/rv732I=;\n\t5:SmA764JZwQ7KE6k8b6+i30CpvxbsrkVUyl+fAnfLe82bRY3i5cgWXkX7Ts3Tk90gkQ03KmyezG0O9GQvWfwJe+ZUtzsa4iACAN2ih6sWr6vggWWIxS3ImOv7BFc8xLJcrSJZZgtlReGWBE8DxnHS6A==;\n\t24:wQfEo0OcFrTS0fS32CVO02TVQz4gVNnTxgz/u5S3fYhIE2l/8Zf/5N4OgRvgmSXSplLaVMIa+66cSo5egC+qxPYT4DHNXyibgxT3V+cz0hs=", "1; AM5PR0501MB2449;\n\t7:NVjGl60t7dICp6jxSD5AAVs9GjxVxGcsD+Q+gOYi0SbYLHwFjQCBhb4cM4FeaIoiIldxU6HIFMjuPglGcgHu10FU8WZb3al46rx0XOPJ8OntiCXOFyoZMFG7ihJkY1VZFYZxmRkDuDN/Y5+3yQtSD+s0JmVTKbjLOyCNkgFV2HP4Uz/EBN0kKIRY+DB+T8VQCTobWW3cGReQQs/2qB59c+62hYtvK85Hc2Qm4SQtgswTT6hmQ+5LwwjsSUczhZNC/l2xxbbEaYwRAMj0Q7Vsb/fU0xMZWR+JWAzueovAEk3W2Yk2APJWoqv8SFh44ZJKXe9lbDCA6LQcrw1ZKXd8aQ==" ], "X-LD-Processed": "a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr", "X-Microsoft-Antispam-PRVS": "<AM5PR0501MB24493590304CFF8E7C825BC0C33A0@AM5PR0501MB2449.eurprd05.prod.outlook.com>", "X-Exchange-Antispam-Report-Test": "UriScan:;", "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123560025)(20161123555025)(20161123558025)(20161123564025)(6072148);\n\tSRVR:AM5PR0501MB2449; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0501MB2449; ", "X-Forefront-PRVS": "02524402D6", "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(4630300001)(6009001)(39850400002)(39840400002)(39410400002)(39860400002)(39450400003)(36756003)(50226002)(50466002)(48376002)(55016002)(4326008)(86362001)(6666003)(6916009)(7736002)(575784001)(1076002)(5003940100001)(81166006)(8676002)(5660300001)(2906002)(305945005)(6116002)(33026002)(66066001)(50986999)(3846002)(110136004)(53936002)(189998001)(42186005)(33646002)(54906002)(47776003)(38730400002)(2351001);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0501MB2449; H:mellanox.com; FPR:;\n\tSPF:None; MLV:sfv; LANG:en; ", "SpamDiagnosticOutput": "1:99", "SpamDiagnosticMetadata": "NSPM", "X-OriginatorOrg": "Mellanox.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "20 Mar 2017 23:38:14.6980\n\t(UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AM5PR0501MB2449", "Subject": "[dpdk-dev] [PATCH] net/mlx5: fix reusing Rx/Tx queues", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <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": "When configuring Rx/Tx queue, if queue already exists, it is reused. But if\nthe queue size is changed, it must be resized to not access/overwrite\ninvalid memory.\n\nFixes: 2e22920b85d9 (\"mlx5: support non-scattered Tx and Rx\")\n\nCC: stable@dpdk.org\nSigned-off-by: Yongseok Koh <yskoh@mellanox.com>\n---\n drivers/net/mlx5/mlx5_rxq.c | 13 +++++++++++++\n drivers/net/mlx5/mlx5_txq.c | 13 +++++++++++++\n 2 files changed, 26 insertions(+)", "diff": "diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c\nindex e6070a0e5..aa28efc3d 100644\n--- a/drivers/net/mlx5/mlx5_rxq.c\n+++ b/drivers/net/mlx5/mlx5_rxq.c\n@@ -1261,6 +1261,19 @@ mlx5_rx_queue_setup(struct rte_eth_dev *dev, uint16_t idx, uint16_t desc,\n \t\t}\n \t\t(*priv->rxqs)[idx] = NULL;\n \t\trxq_cleanup(rxq_ctrl);\n+\t\t/* Resize if rxq size is chagned. */\n+\t\tif (rxq_ctrl->rxq.elts_n != log2above(desc)) {\n+\t\t\trxq_ctrl = rte_realloc(rxq_ctrl,\n+\t\t\t\t\t sizeof(*rxq_ctrl) +\n+\t\t\t\t\t desc * sizeof(struct rte_mbuf *),\n+\t\t\t\t\t RTE_CACHE_LINE_SIZE);\n+\t\t\tif (!rxq_ctrl) {\n+\t\t\t\tERROR(\"%p: unable to reallocate queue index %u\",\n+\t\t\t\t\t(void *)dev, idx);\n+\t\t\t\tpriv_unlock(priv);\n+\t\t\t\treturn -ENOMEM;\n+\t\t\t}\n+\t\t}\n \t} else {\n \t\trxq_ctrl = rte_calloc_socket(\"RXQ\", 1, sizeof(*rxq_ctrl) +\n \t\t\t\t\t desc * sizeof(struct rte_mbuf *),\ndiff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c\nindex bbfce756b..371dcd2f6 100644\n--- a/drivers/net/mlx5/mlx5_txq.c\n+++ b/drivers/net/mlx5/mlx5_txq.c\n@@ -532,6 +532,19 @@ mlx5_tx_queue_setup(struct rte_eth_dev *dev, uint16_t idx, uint16_t desc,\n \t\t}\n \t\t(*priv->txqs)[idx] = NULL;\n \t\ttxq_cleanup(txq_ctrl);\n+\t\t/* Resize if txq size is chagned. */\n+\t\tif (txq_ctrl->txq.elts_n != log2above(desc)) {\n+\t\t\ttxq_ctrl = rte_realloc(txq_ctrl,\n+\t\t\t\t\t sizeof(*txq_ctrl) +\n+\t\t\t\t\t desc * sizeof(struct rte_mbuf *),\n+\t\t\t\t\t RTE_CACHE_LINE_SIZE);\n+\t\t\tif (!txq_ctrl) {\n+\t\t\t\tERROR(\"%p: unable to reallocate queue index %u\",\n+\t\t\t\t\t(void *)dev, idx);\n+\t\t\t\tpriv_unlock(priv);\n+\t\t\t\treturn -ENOMEM;\n+\t\t\t}\n+\t\t}\n \t} else {\n \t\ttxq_ctrl =\n \t\t\trte_calloc_socket(\"TXQ\", 1,\n", "prefixes": [ "dpdk-dev" ] }{ "id": 22030, "url": "