Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/813289/?format=api
{ "id": 813289, "url": "http://patchwork.ozlabs.org/api/patches/813289/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/patch/150529678520.57063.3558143909401835083.stgit@anamdev.jf.intel.com/", "project": { "id": 7, "url": "http://patchwork.ozlabs.org/api/projects/7/?format=api", "name": "Linux network development", "link_name": "netdev", "list_id": "netdev.vger.kernel.org", "list_email": "netdev@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<150529678520.57063.3558143909401835083.stgit@anamdev.jf.intel.com>", "list_archive_url": null, "date": "2017-09-13T09:59:45", "name": "[RFC,v3,6/7] i40e: Clean up of cloud filters", "commit_ref": null, "pull_url": null, "state": "rfc", "archived": true, "hash": "513a4ad33a466af25dc3e2405902634b660ad019", "submitter": { "id": 68504, "url": "http://patchwork.ozlabs.org/api/people/68504/?format=api", "name": "Nambiar, Amritha", "email": "amritha.nambiar@intel.com" }, "delegate": { "id": 34, "url": "http://patchwork.ozlabs.org/api/users/34/?format=api", "username": "davem", "first_name": "David", "last_name": "Miller", "email": "davem@davemloft.net" }, "mbox": "http://patchwork.ozlabs.org/project/netdev/patch/150529678520.57063.3558143909401835083.stgit@anamdev.jf.intel.com/mbox/", "series": [ { "id": 2861, "url": "http://patchwork.ozlabs.org/api/series/2861/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=2861", "date": "2017-09-13T09:59:13", "name": "tc-flower based cloud filters in i40e", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/2861/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/813289/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/813289/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<netdev-owner@vger.kernel.org>", "X-Original-To": "patchwork-incoming@ozlabs.org", "Delivered-To": "patchwork-incoming@ozlabs.org", "Authentication-Results": "ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)", "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xsccT3sSFz9s76\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 13 Sep 2017 20:00:57 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1752207AbdIMKAz (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tWed, 13 Sep 2017 06:00:55 -0400", "from mga04.intel.com ([192.55.52.120]:37862 \"EHLO mga04.intel.com\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1751718AbdIMKAx (ORCPT <rfc822;netdev@vger.kernel.org>);\n\tWed, 13 Sep 2017 06:00:53 -0400", "from fmsmga005.fm.intel.com ([10.253.24.32])\n\tby fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t13 Sep 2017 03:00:52 -0700", "from anamdev.jf.intel.com ([10.166.29.110])\n\tby fmsmga005.fm.intel.com with ESMTP; 13 Sep 2017 03:00:52 -0700" ], "X-ExtLoop1": "1", "X-IronPort-AV": "E=Sophos;i=\"5.42,387,1500966000\"; d=\"scan'208\";a=\"150797324\"", "Subject": "[RFC PATCH v3 6/7] i40e: Clean up of cloud filters", "From": "Amritha Nambiar <amritha.nambiar@intel.com>", "To": "intel-wired-lan@lists.osuosl.org, jeffrey.t.kirsher@intel.com", "Cc": "alexander.h.duyck@intel.com, netdev@vger.kernel.org,\n\tamritha.nambiar@intel.com", "Date": "Wed, 13 Sep 2017 02:59:45 -0700", "Message-ID": "<150529678520.57063.3558143909401835083.stgit@anamdev.jf.intel.com>", "In-Reply-To": "<150529632024.57063.15338545678487601430.stgit@anamdev.jf.intel.com>", "References": "<150529632024.57063.15338545678487601430.stgit@anamdev.jf.intel.com>", "User-Agent": "StGit/0.17.1-dirty", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "7bit", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "Introduce the cloud filter datastructure and cleanup of cloud\nfilters associated with the device.\n\nv2: Moved field comments in struct i40e_cloud_filter to the right.\nRemoved hlist_empty check from i40e_cloud_filter_exit()\n\nSigned-off-by: Amritha Nambiar <amritha.nambiar@intel.com>\n---\n drivers/net/ethernet/intel/i40e/i40e.h | 9 +++++++++\n drivers/net/ethernet/intel/i40e/i40e_main.c | 24 ++++++++++++++++++++++++\n 2 files changed, 33 insertions(+)", "diff": "diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h\nindex d846da9..6018fb6 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e.h\n+++ b/drivers/net/ethernet/intel/i40e/i40e.h\n@@ -252,6 +252,12 @@ struct i40e_fdir_filter {\n \tu32 fd_id;\n };\n \n+struct i40e_cloud_filter {\n+\tstruct hlist_node cloud_node;\n+\tunsigned long cookie;\n+\tu16 seid;\t/* filter control */\n+};\n+\n #define I40E_ETH_P_LLDP\t\t\t0x88cc\n \n #define I40E_DCB_PRIO_TYPE_STRICT\t0\n@@ -419,6 +425,9 @@ struct i40e_pf {\n \tstruct i40e_udp_port_config udp_ports[I40E_MAX_PF_UDP_OFFLOAD_PORTS];\n \tu16 pending_udp_bitmap;\n \n+\tstruct hlist_head cloud_filter_list;\n+\tu16 num_cloud_filters;\n+\n \tenum i40e_interrupt_policy int_policy;\n \tu16 rx_itr_default;\n \tu16 tx_itr_default;\ndiff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c\nindex 60c689a..afcf08a 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e_main.c\n+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c\n@@ -6922,6 +6922,26 @@ static void i40e_fdir_filter_exit(struct i40e_pf *pf)\n }\n \n /**\n+ * i40e_cloud_filter_exit - Cleans up the Cloud Filters\n+ * @pf: Pointer to PF\n+ *\n+ * This function destroys the hlist where all the Cloud Filters\n+ * filters were saved.\n+ **/\n+static void i40e_cloud_filter_exit(struct i40e_pf *pf)\n+{\n+\tstruct i40e_cloud_filter *cfilter;\n+\tstruct hlist_node *node;\n+\n+\thlist_for_each_entry_safe(cfilter, node,\n+\t\t\t\t &pf->cloud_filter_list, cloud_node) {\n+\t\thlist_del(&cfilter->cloud_node);\n+\t\tkfree(cfilter);\n+\t}\n+\tpf->num_cloud_filters = 0;\n+}\n+\n+/**\n * i40e_close - Disables a network interface\n * @netdev: network interface device structure\n *\n@@ -12176,6 +12196,7 @@ static int i40e_setup_pf_switch(struct i40e_pf *pf, bool reinit)\n \t\t\tvsi = i40e_vsi_reinit_setup(pf->vsi[pf->lan_vsi]);\n \t\tif (!vsi) {\n \t\t\tdev_info(&pf->pdev->dev, \"setup of MAIN VSI failed\\n\");\n+\t\t\ti40e_cloud_filter_exit(pf);\n \t\t\ti40e_fdir_teardown(pf);\n \t\t\treturn -EAGAIN;\n \t\t}\n@@ -13010,6 +13031,8 @@ static void i40e_remove(struct pci_dev *pdev)\n \tif (pf->vsi[pf->lan_vsi])\n \t\ti40e_vsi_release(pf->vsi[pf->lan_vsi]);\n \n+\ti40e_cloud_filter_exit(pf);\n+\n \t/* remove attached clients */\n \tif (pf->flags & I40E_FLAG_IWARP_ENABLED) {\n \t\tret_code = i40e_lan_del_device(pf);\n@@ -13241,6 +13264,7 @@ static void i40e_shutdown(struct pci_dev *pdev)\n \n \tdel_timer_sync(&pf->service_timer);\n \tcancel_work_sync(&pf->service_task);\n+\ti40e_cloud_filter_exit(pf);\n \ti40e_fdir_teardown(pf);\n \n \t/* Client close must be called explicitly here because the timer\n", "prefixes": [ "RFC", "v3", "6/7" ] }