Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/66771/?format=api
https://patches.dpdk.org/api/patches/66771/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/20200317091206.34928-6-huwei013@chinasoftinc.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": "<20200317091206.34928-6-huwei013@chinasoftinc.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20200317091206.34928-6-huwei013@chinasoftinc.com", "date": "2020-03-17T09:12:04", "name": "[5/7] net/hns3: fix crash when flushing RSS flow rules with FLR", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "7dd00a419fbe26d4f4095b8be3ecd427113ffef6", "submitter": { "id": 1537, "url": "https://patches.dpdk.org/api/people/1537/?format=api", "name": "Wei Hu (Xavier)", "email": "huwei013@chinasoftinc.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/20200317091206.34928-6-huwei013@chinasoftinc.com/mbox/", "series": [ { "id": 8952, "url": "https://patches.dpdk.org/api/series/8952/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=8952", "date": "2020-03-17T09:11:59", "name": "misc updates for hns3 PMD driver", "version": 1, "mbox": "https://patches.dpdk.org/series/8952/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/66771/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/66771/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id AB028A0559;\n\tTue, 17 Mar 2020 10:24:57 +0100 (CET)", "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 8EDD81C0B3;\n\tTue, 17 Mar 2020 10:24:26 +0100 (CET)", "from incedge.chinasoftinc.com (unknown [114.113.233.8])\n by dpdk.org (Postfix) with ESMTP id 9F4F51C0B0\n for <dev@dpdk.org>; Tue, 17 Mar 2020 10:24:22 +0100 (CET)", "from mail.chinasoftinc.com (inccas001.ito.icss [10.168.0.51]) by\n incedge.chinasoftinc.com with ESMTP id F2m2jzWS9v6YRhX9 (version=TLSv1\n cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NO) for <dev@dpdk.org>;\n Tue, 17 Mar 2020 17:23:04 +0800 (CST)", "from localhost.localdomain (114.119.4.74) by INCCAS001.ito.icss\n (10.168.0.60) with Microsoft SMTP Server id 14.3.487.0; Tue, 17 Mar 2020\n 17:13:14 +0800" ], "X-ASG-Debug-ID": "1584436940-0a3dd134b2001b0009-TfluYd", "X-Barracuda-Envelope-From": "huwei013@chinasoftinc.com", "X-Barracuda-RBL-Trusted-Forwarder": [ "10.168.0.51", "10.168.0.60" ], "X-ASG-Whitelist": "Client", "From": "\"Wei Hu (Xavier)\" <huwei013@chinasoftinc.com>", "To": "<dev@dpdk.org>", "Date": "Tue, 17 Mar 2020 17:12:04 +0800", "X-ASG-Orig-Subj": "[PATCH 5/7] net/hns3: fix crash when flushing RSS flow rules\n with FLR", "Message-ID": "<20200317091206.34928-6-huwei013@chinasoftinc.com>", "X-Mailer": "git-send-email 2.23.0", "In-Reply-To": "<20200317091206.34928-1-huwei013@chinasoftinc.com>", "References": "<20200317091206.34928-1-huwei013@chinasoftinc.com>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"UTF-8\"", "Content-Transfer-Encoding": "8bit", "X-Originating-IP": "[114.119.4.74]", "X-Barracuda-Connect": "inccas001.ito.icss[10.168.0.51]", "X-Barracuda-Start-Time": "1584436982", "X-Barracuda-Encrypted": "ECDHE-RSA-AES256-SHA", "X-Barracuda-URL": "https://incspam.chinasofti.com:443/cgi-mod/mark.cgi", "X-Virus-Scanned": "by bsmtpd at chinasoftinc.com", "X-Barracuda-Scan-Msg-Size": "2667", "Subject": "[dpdk-dev] [PATCH 5/7] net/hns3: fix crash when flushing RSS flow\n\trules with FLR", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "From: Chengwen Feng <fengchengwen@huawei.com>\n\nCurrently, we encoutner segmentation fault when performing the following\ntest case:\n1. Run testpmd application, config the flow filter rules then flush them\n repeatedly.\n2. Inject FLR concurrently every 5 second.\nThe calltrace info:\n\nThis GDB was configured as \"aarch64-linux-gnu\".\nReading symbols from ./testpmd...(no debugging symbols found)...done.\n[New LWP 322]\n[New LWP 325]\n[New LWP 324]\n[New LWP 326]\n[New LWP 323]\n[New LWP 327]\n[Thread debugging using libthread_db enabled]\nUsing host libthread_db library \"/lib/aarch64-linux-gnu/\nlibthread_db.so.1\".\nCore was generated by `/home/root/app/testpmd -w 0000:00:01.0 -w\n0000:00:02.0 -w 0000:00:03.0 -l 0-3 -'.\nProgram terminated with signal SIGSEGV, Segmentation fault.\nlibc.so.6\n[Current thread is 1 (Thread 0xffff8bb35110 (LWP 322))]\n(gdb) bt\n #0 0x0000ffff8b936a90 in strlen () from /lib/aarch64-linux-gnu/\n libc.so.6\n #1 0x0000ffff8b905ccc in vfprintf () from /lib/aarch64-linux-gnu/\n libc.so.6\n #2 0x0000ffff8b993d04 in __printf_chk () from /lib/aarch64-linux-gnu/\n libc.so.6\n #3 0x0000000000754828 in port_flow_flush ()\n #4 0x0000000000870f3c in cmdline_parse ()\n\nThe root cause as follows:\nIn the '.flush' ops implementation function named hns3_flow_flush, By the\nway the '.flush' ops is defined in the struct rte_flow_ops, if failed to\ncall hns3_clear_rss_filter, the out parameter error is not setted, and then\nthe member variable name message in the struct error is invalid(filled with\n0x44444444 in port_flow_flush function of the testpmd application), it\nleads to segmentation fault when format the message.\n\nWe fixes it by filling error parameter when failure in calling static\nfunction named hns3_clear_rss_filter in the the '.flush' ops implementation\nfunction named hns3_flow_flush.\n\nFixes: c37ca66f2b27 (\"net/hns3: support RSS\")\nCc: stable@dpdk.org\n\nSigned-off-by: Chengwen Feng <fengchengwen@huawei.com>\nSigned-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>\n---\n drivers/net/hns3/hns3_flow.c | 5 ++++-\n 1 file changed, 4 insertions(+), 1 deletion(-)", "diff": "diff --git a/drivers/net/hns3/hns3_flow.c b/drivers/net/hns3/hns3_flow.c\nindex 98affa567..559b9d02b 100644\n--- a/drivers/net/hns3/hns3_flow.c\n+++ b/drivers/net/hns3/hns3_flow.c\n@@ -1827,8 +1827,11 @@ hns3_flow_flush(struct rte_eth_dev *dev, struct rte_flow_error *error)\n \t}\n \n \tret = hns3_clear_rss_filter(dev);\n-\tif (ret)\n+\tif (ret) {\n+\t\trte_flow_error_set(error, ret, RTE_FLOW_ERROR_TYPE_HANDLE,\n+\t\t\t\t NULL, \"Failed to flush rss filter\");\n \t\treturn ret;\n+\t}\n \n \thns3_filterlist_flush(dev);\n \n", "prefixes": [ "5/7" ] }{ "id": 66771, "url": "