Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/724790/?format=api
{ "id": 724790, "url": "http://patchwork.ozlabs.org/api/patches/724790/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20170206223852.31177-4-jacob.e.keller@intel.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": "<20170206223852.31177-4-jacob.e.keller@intel.com>", "list_archive_url": null, "date": "2017-02-06T22:38:46", "name": "[PART2,3/9] i40e: restore default input set for each flow type", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": false, "hash": "3618737c4010af530d201d493f59cee4913b7936", "submitter": { "id": 9784, "url": "http://patchwork.ozlabs.org/api/people/9784/?format=api", "name": "Jacob Keller", "email": "jacob.e.keller@intel.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/20170206223852.31177-4-jacob.e.keller@intel.com/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/724790/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/724790/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<intel-wired-lan-bounces@lists.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" ], "Received": [ "from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136])\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 3vHMpj3qWWz9s2P\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 7 Feb 2017 09:39:25 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby silver.osuosl.org (Postfix) with ESMTP id CC8E030A52;\n\tMon, 6 Feb 2017 22:39:23 +0000 (UTC)", "from silver.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id 6PuYg2vDwmnz; Mon, 6 Feb 2017 22:39:16 +0000 (UTC)", "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby silver.osuosl.org (Postfix) with ESMTP id EA95930A8E;\n\tMon, 6 Feb 2017 22:39:02 +0000 (UTC)", "from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\tby ash.osuosl.org (Postfix) with ESMTP id 61E991BFF07\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 6 Feb 2017 22:38:58 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 62E2F815B4\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 6 Feb 2017 22:38:58 +0000 (UTC)", "from whitealder.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id Aa2n+86WXHSt for <intel-wired-lan@lists.osuosl.org>;\n\tMon, 6 Feb 2017 22:38:55 +0000 (UTC)", "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n\tby whitealder.osuosl.org (Postfix) with ESMTPS id 279288877D\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tMon, 6 Feb 2017 22:38:55 +0000 (UTC)", "from fmsmga005.fm.intel.com ([10.253.24.32])\n\tby fmsmga102.fm.intel.com with ESMTP; 06 Feb 2017 14:38:54 -0800", "from jekeller-desk.amr.corp.intel.com (HELO\n\tjekeller-desk.jekeller.internal) ([10.166.35.174])\n\tby fmsmga005.fm.intel.com with ESMTP; 06 Feb 2017 14:38:54 -0800" ], "X-Virus-Scanned": [ "amavisd-new at osuosl.org", "amavisd-new at osuosl.org" ], "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6", "X-ExtLoop1": "1", "X-IronPort-AV": "E=Sophos;i=\"5.33,342,1477983600\"; d=\"scan'208\";a=\"61907688\"", "From": "Jacob Keller <jacob.e.keller@intel.com>", "To": "Intel Wired LAN <intel-wired-lan@lists.osuosl.org>", "Date": "Mon, 6 Feb 2017 14:38:46 -0800", "Message-Id": "<20170206223852.31177-4-jacob.e.keller@intel.com>", "X-Mailer": "git-send-email 2.12.0.rc0.151.g8a5726c42288", "In-Reply-To": "<20170206223852.31177-1-jacob.e.keller@intel.com>", "References": "<20170206223852.31177-1-jacob.e.keller@intel.com>", "Subject": "[Intel-wired-lan] [PART2 PATCH 3/9] i40e: restore default input set\n\tfor each flow type", "X-BeenThere": "intel-wired-lan@lists.osuosl.org", "X-Mailman-Version": "2.1.18-1", "Precedence": "list", "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n\t<intel-wired-lan.lists.osuosl.org>", "List-Unsubscribe": "<http://lists.osuosl.org/mailman/options/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@lists.osuosl.org?subject=unsubscribe>", "List-Archive": "<http://lists.osuosl.org/pipermail/intel-wired-lan/>", "List-Post": "<mailto:intel-wired-lan@lists.osuosl.org>", "List-Help": "<mailto:intel-wired-lan-request@lists.osuosl.org?subject=help>", "List-Subscribe": "<http://lists.osuosl.org/mailman/listinfo/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@lists.osuosl.org?subject=subscribe>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Errors-To": "intel-wired-lan-bounces@lists.osuosl.org", "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@lists.osuosl.org>" }, "content": "Ensure that the default input set is correctly reprogrammed when\ncleaning up after disabling flow director support. This ensures that the\nprogrammed value will be in a clean state.\n\nAlthough we do not yet have support for SCTPv4 filters, a future patch\nwill add support for this protocol, so we will correctly restore the\nSCTPv4 input set here as well. Note that strictly speaking the default\nhardware value for SCTP includes matching the verification tag. However,\nthe ethtool API does not have support for specifying this value, so\nthere is no reason to keep the verification field enabled.\n\nThis patch is the next step on the way to enabling partial tuple filters\nwhich will be implemented in a following patch.\n\nSigned-off-by: Jacob Keller <jacob.e.keller@intel.com>\nChange-Id: c22e1c267ae37518bb036aca4a5694681449f283\n---\n drivers/net/ethernet/intel/i40e/i40e.h | 18 ++++++++++++++++++\n drivers/net/ethernet/intel/i40e/i40e_main.c | 19 +++++++++++++++++++\n 2 files changed, 37 insertions(+)", "diff": "diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h\nindex c32658ca5c22..4d54d5005ad3 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e.h\n+++ b/drivers/net/ethernet/intel/i40e/i40e.h\n@@ -761,6 +761,24 @@ static inline u64 i40e_read_fd_input_set(struct i40e_pf *pf, u16 addr)\n \treturn val;\n }\n \n+/**\n+ * i40e_write_fd_input_set - writes value into flow director input set register\n+ * @pf: pointer to the PF struct\n+ * @addr: register addr\n+ * @val: value to be written\n+ *\n+ * This function writes specified value to the register specified by 'addr'.\n+ * This register is input set register based on flow-type.\n+ **/\n+static inline void i40e_write_fd_input_set(struct i40e_pf *pf,\n+\t\t\t\t\t u16 addr, u64 val)\n+{\n+\ti40e_write_rx_ctl(&pf->hw, I40E_PRTQF_FD_INSET(addr, 1),\n+\t\t\t (u32)(val >> 32));\n+\ti40e_write_rx_ctl(&pf->hw, I40E_PRTQF_FD_INSET(addr, 0),\n+\t\t\t (u32)(val & 0xFFFFFFFFULL));\n+}\n+\n /* needed by i40e_ethtool.c */\n int i40e_up(struct i40e_vsi *vsi);\n void i40e_down(struct i40e_vsi *vsi);\ndiff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c\nindex c188559fc4ed..2c3a427f5b75 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e_main.c\n+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c\n@@ -5900,6 +5900,25 @@ static void i40e_fdir_filter_exit(struct i40e_pf *pf)\n \tpf->fd_tcp4_filter_cnt = 0;\n \tpf->fd_udp4_filter_cnt = 0;\n \tpf->fd_ip4_filter_cnt = 0;\n+\n+\t/* Reprogram the default input set for TCP/IPv4 */\n+\ti40e_write_fd_input_set(pf, I40E_FILTER_PCTYPE_NONF_IPV4_TCP,\n+\t\t\t\tI40E_L3_SRC_MASK | I40E_L3_DST_MASK |\n+\t\t\t\tI40E_L4_SRC_MASK | I40E_L4_DST_MASK);\n+\n+\t/* Reprogram the default input set for UDP/IPv4 */\n+\ti40e_write_fd_input_set(pf, I40E_FILTER_PCTYPE_NONF_IPV4_UDP,\n+\t\t\t\tI40E_L3_SRC_MASK | I40E_L3_DST_MASK |\n+\t\t\t\tI40E_L4_SRC_MASK | I40E_L4_DST_MASK);\n+\n+\t/* Reprogram the default input set for SCTP/IPv4 */\n+\ti40e_write_fd_input_set(pf, I40E_FILTER_PCTYPE_NONF_IPV4_SCTP,\n+\t\t\t\tI40E_L3_SRC_MASK | I40E_L3_DST_MASK |\n+\t\t\t\tI40E_L4_SRC_MASK | I40E_L4_DST_MASK);\n+\n+\t/* Reprogram the default input set for Other/IPv4 */\n+\ti40e_write_fd_input_set(pf, I40E_FILTER_PCTYPE_NONF_IPV4_OTHER,\n+\t\t\t\tI40E_L3_SRC_MASK | I40E_L3_DST_MASK);\n }\n \n /**\n", "prefixes": [ "PART2", "3/9" ] }