Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/851136/?format=api
{ "id": 851136, "url": "http://patchwork.ozlabs.org/api/patches/851136/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/1513728002-7643-7-git-send-email-shannon.nelson@oracle.com/", "project": { "id": 46, "url": "http://patchwork.ozlabs.org/api/projects/46/?format=api", "name": "Intel Wired Ethernet development", "link_name": "intel-wired-lan", "list_id": "intel-wired-lan.osuosl.org", "list_email": "intel-wired-lan@osuosl.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1513728002-7643-7-git-send-email-shannon.nelson@oracle.com>", "list_archive_url": null, "date": "2017-12-19T23:59:58", "name": "[v3,next-queue,06/10] ixgbe: restore offloaded SAs after a reset", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": false, "hash": "6fe9ff4a6bbaa7bcf2dca42ec5d7c826f698fd40", "submitter": { "id": 70766, "url": "http://patchwork.ozlabs.org/api/people/70766/?format=api", "name": "Shannon Nelson", "email": "shannon.nelson@oracle.com" }, "delegate": { "id": 68, "url": "http://patchwork.ozlabs.org/api/users/68/?format=api", "username": "jtkirshe", "first_name": "Jeff", "last_name": "Kirsher", "email": "jeffrey.t.kirsher@intel.com" }, "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/1513728002-7643-7-git-send-email-shannon.nelson@oracle.com/mbox/", "series": [ { "id": 19548, "url": "http://patchwork.ozlabs.org/api/series/19548/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=19548", "date": "2017-12-19T23:59:56", "name": "ixgbe: Add ipsec offload", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/19548/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/851136/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/851136/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<intel-wired-lan-bounces@osuosl.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "intel-wired-lan@lists.osuosl.org" ], "Delivered-To": [ "patchwork-incoming@bilbo.ozlabs.org", "intel-wired-lan@lists.osuosl.org" ], "Authentication-Results": [ "ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=osuosl.org\n\t(client-ip=140.211.166.133; helo=hemlock.osuosl.org;\n\tenvelope-from=intel-wired-lan-bounces@osuosl.org;\n\treceiver=<UNKNOWN>)", "ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=oracle.com header.i=@oracle.com\n\theader.b=\"cGcSoirX\"; dkim-atps=neutral" ], "Received": [ "from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3z1Zkt189tz9s7v\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 20 Dec 2017 11:04:22 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 6394788C2F;\n\tWed, 20 Dec 2017 00:04:20 +0000 (UTC)", "from hemlock.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id Q9EL9MDCFkXm; Wed, 20 Dec 2017 00:04:18 +0000 (UTC)", "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id BE09488C24;\n\tWed, 20 Dec 2017 00:04:18 +0000 (UTC)", "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\tby ash.osuosl.org (Postfix) with ESMTP id 9F70D1CEF84\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 20 Dec 2017 00:04:17 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 9C69F87D44\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 20 Dec 2017 00:04:17 +0000 (UTC)", "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id Qk3XJSAjkMqx for <intel-wired-lan@lists.osuosl.org>;\n\tWed, 20 Dec 2017 00:04:17 +0000 (UTC)", "from aserp2130.oracle.com (aserp2130.oracle.com [141.146.126.79])\n\tby fraxinus.osuosl.org (Postfix) with ESMTPS id 16FFE87D42\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 20 Dec 2017 00:04:17 +0000 (UTC)", "from pps.filterd (aserp2130.oracle.com [127.0.0.1])\n\tby aserp2130.oracle.com (8.16.0.21/8.16.0.21) with SMTP id\n\tvBK02IQP143884; Wed, 20 Dec 2017 00:04:15 GMT", "from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234])\n\tby aserp2130.oracle.com with ESMTP id 2eycx905m9-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256\n\tverify=OK); Wed, 20 Dec 2017 00:04:14 +0000", "from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236])\n\tby aserv0022.oracle.com (8.14.4/8.14.4) with ESMTP id\n\tvBK00F0Q031091\n\t(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256\n\tverify=FAIL); Wed, 20 Dec 2017 00:00:15 GMT", "from abhmp0018.oracle.com (abhmp0018.oracle.com [141.146.116.24])\n\tby aserv0122.oracle.com (8.14.4/8.14.4) with ESMTP id\n\tvBK00ESq028311; Wed, 20 Dec 2017 00:00:14 GMT", "from slnelson-mint18.us.oracle.com (/10.159.142.109)\n\tby default (Oracle Beehive Gateway v4.0)\n\twith ESMTP ; Tue, 19 Dec 2017 16:00:14 -0800" ], "X-Virus-Scanned": [ "amavisd-new at osuosl.org", "amavisd-new at osuosl.org" ], "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;\n\th=from : to : cc :\n\tsubject : date : message-id : in-reply-to : references;\n\ts=corp-2017-10-26; \n\tbh=+QGiKXd5xtyiQZ9kSXsY0t3kokfQn6Cc5WEdaZoEL1c=;\n\tb=cGcSoirXGbxdp7osjvbJzfF06zzjlwU47/U6aA5txCckfafxX/zVViUzTW2PrSCnalW/\n\tWM3RSpkDjMJnn4+PNhAHm3rQtzSCrblNLTnDisNBirX519/EKrlSm7PZHmr+1M+kkbDL\n\tI37Irl0qwoh8Y6F7XZ9OTLZq19AXmJZwRxorWwy8FvyLtJuwALjODdxwoMdF3/kz5U0p\n\teWaUt0vWc6KCO+oaFWTwpaLIGhejSqEOGFcXqzZY3yVMtCirlp6chbZ1jTGhoHOOd0JO\n\tq/mj9593JwnEQQIUtOTm/GmBwSVk1QPeHJIZ5qIxVEg3bJ7T2+EwEd4Sn0t35eGC8RFV\n\tcg== ", "From": "Shannon Nelson <shannon.nelson@oracle.com>", "To": "intel-wired-lan@lists.osuosl.org, jeffrey.t.kirsher@intel.com", "Date": "Tue, 19 Dec 2017 15:59:58 -0800", "Message-Id": "<1513728002-7643-7-git-send-email-shannon.nelson@oracle.com>", "X-Mailer": "git-send-email 2.7.4", "In-Reply-To": "<1513728002-7643-1-git-send-email-shannon.nelson@oracle.com>", "References": "<1513728002-7643-1-git-send-email-shannon.nelson@oracle.com>", "X-Proofpoint-Virus-Version": "vendor=nai engine=5900 definitions=8750\n\tsignatures=668650", "X-Proofpoint-Spam-Details": "rule=notspam policy=default score=0 suspectscore=0\n\tmalwarescore=0\n\tphishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999\n\tadultscore=0 classifier=spam adjust=0 reason=mlx scancount=1\n\tengine=8.0.1-1711220000 definitions=main-1712190336", "Subject": "[Intel-wired-lan] [PATCH v3 next-queue 06/10] ixgbe: restore\n\toffloaded SAs after a reset", "X-BeenThere": "intel-wired-lan@osuosl.org", "X-Mailman-Version": "2.1.24", "Precedence": "list", "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n\t<intel-wired-lan.osuosl.org>", "List-Unsubscribe": "<https://lists.osuosl.org/mailman/options/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>", "List-Archive": "<http://lists.osuosl.org/pipermail/intel-wired-lan/>", "List-Post": "<mailto:intel-wired-lan@osuosl.org>", "List-Help": "<mailto:intel-wired-lan-request@osuosl.org?subject=help>", "List-Subscribe": "<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>", "Cc": "steffen.klassert@secunet.com, sowmini.varadhan@oracle.com,\n\tnetdev@vger.kernel.org", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Errors-To": "intel-wired-lan-bounces@osuosl.org", "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>" }, "content": "On a chip reset most of the table contents are lost, so must be\nrestored. This scans the driver's ipsec tables and restores both\nthe filled and empty table slots to their pre-reset values.\n\nv2: during restore, clean the tables before restarting\n\nSigned-off-by: Shannon Nelson <shannon.nelson@oracle.com>\n---\n drivers/net/ethernet/intel/ixgbe/ixgbe.h | 2 ++\n drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c | 41 ++++++++++++++++++++++++++\n drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 1 +\n 3 files changed, 44 insertions(+)", "diff": "diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe.h b/drivers/net/ethernet/intel/ixgbe/ixgbe.h\nindex 8f41508..af690c2 100644\n--- a/drivers/net/ethernet/intel/ixgbe/ixgbe.h\n+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe.h\n@@ -1010,8 +1010,10 @@ s32 ixgbe_negotiate_fc(struct ixgbe_hw *hw, u32 adv_reg, u32 lp_reg,\n #ifdef CONFIG_XFRM_OFFLOAD\n void ixgbe_init_ipsec_offload(struct ixgbe_adapter *adapter);\n void ixgbe_stop_ipsec_offload(struct ixgbe_adapter *adapter);\n+void ixgbe_ipsec_restore(struct ixgbe_adapter *adapter);\n #else\n static inline void ixgbe_init_ipsec_offload(struct ixgbe_adapter *adapter) { };\n static inline void ixgbe_stop_ipsec_offload(struct ixgbe_adapter *adapter) { };\n+static inline void ixgbe_ipsec_restore(struct ixgbe_adapter *adapter) { };\n #endif /* CONFIG_XFRM_OFFLOAD */\n #endif /* _IXGBE_H_ */\ndiff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c\nindex 96971ce..9cf120d 100644\n--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c\n+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c\n@@ -299,6 +299,47 @@ static void ixgbe_ipsec_start_engine(struct ixgbe_adapter *adapter)\n }\n \n /**\n+ * ixgbe_ipsec_restore - restore the ipsec HW settings after a reset\n+ * @adapter: board private structure\n+ **/\n+void ixgbe_ipsec_restore(struct ixgbe_adapter *adapter)\n+{\n+\tstruct ixgbe_ipsec *ipsec = adapter->ipsec;\n+\tstruct ixgbe_hw *hw = &adapter->hw;\n+\tint i;\n+\n+\tif (!(adapter->flags2 & IXGBE_FLAG2_IPSEC_ENABLED))\n+\t\treturn;\n+\n+\t/* clean up and restart the engine */\n+\tixgbe_ipsec_stop_engine(adapter);\n+\tixgbe_ipsec_clear_hw_tables(adapter);\n+\tixgbe_ipsec_start_engine(adapter);\n+\n+\t/* reload the IP addrs */\n+\tfor (i = 0; i < IXGBE_IPSEC_MAX_RX_IP_COUNT; i++) {\n+\t\tstruct rx_ip_sa *ipsa = &ipsec->ip_tbl[i];\n+\n+\t\tif (ipsa->used)\n+\t\t\tixgbe_ipsec_set_rx_ip(hw, i, ipsa->ipaddr);\n+\t}\n+\n+\t/* reload the Rx and Tx keys */\n+\tfor (i = 0; i < IXGBE_IPSEC_MAX_SA_COUNT; i++) {\n+\t\tstruct rx_sa *rsa = &ipsec->rx_tbl[i];\n+\t\tstruct tx_sa *tsa = &ipsec->tx_tbl[i];\n+\n+\t\tif (rsa->used)\n+\t\t\tixgbe_ipsec_set_rx_sa(hw, i, rsa->xs->id.spi,\n+\t\t\t\t\t rsa->key, rsa->salt,\n+\t\t\t\t\t rsa->mode, rsa->iptbl_ind);\n+\n+\t\tif (tsa->used)\n+\t\t\tixgbe_ipsec_set_tx_sa(hw, i, tsa->key, tsa->salt);\n+\t}\n+}\n+\n+/**\n * ixgbe_ipsec_find_empty_idx - find the first unused security parameter index\n * @ipsec: pointer to ipsec struct\n * @rxtable: true if we need to look in the Rx table\ndiff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c\nindex 2b3da0c..04e8b26 100644\n--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c\n+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c\n@@ -5347,6 +5347,7 @@ static void ixgbe_configure(struct ixgbe_adapter *adapter)\n \n \tixgbe_set_rx_mode(adapter->netdev);\n \tixgbe_restore_vlan(adapter);\n+\tixgbe_ipsec_restore(adapter);\n \n \tswitch (hw->mac.type) {\n \tcase ixgbe_mac_82599EB:\n", "prefixes": [ "v3", "next-queue", "06/10" ] }