Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/712030/?format=api
{ "id": 712030, "url": "http://patchwork.ozlabs.org/api/patches/712030/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20170106160735.1501.50042.stgit@localhost.localdomain/", "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": "<20170106160735.1501.50042.stgit@localhost.localdomain>", "list_archive_url": null, "date": "2017-01-06T16:07:37", "name": "[next,09/11] ixgbe: Add private flag to control buffer mode", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "24837c203aa8e91cc6396518ec999855f9ca2403", "submitter": { "id": 252, "url": "http://patchwork.ozlabs.org/api/people/252/?format=api", "name": "Alexander Duyck", "email": "alexander.duyck@gmail.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/20170106160735.1501.50042.stgit@localhost.localdomain/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/712030/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/712030/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 whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\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 3tw9Bc4cGSz9t0v\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat, 7 Jan 2017 03:35:04 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 1372B81489;\n\tFri, 6 Jan 2017 16:35:03 +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 e344uY+YpBSX; Fri, 6 Jan 2017 16:35:02 +0000 (UTC)", "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 497BA819B1;\n\tFri, 6 Jan 2017 16:35:02 +0000 (UTC)", "from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\tby ash.osuosl.org (Postfix) with ESMTP id 03F7E1BFA57\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:35:01 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id EFF2D8712A\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:35:00 +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 3Nws4YoHMvqT for <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:34:59 +0000 (UTC)", "from mail-pg0-f68.google.com (mail-pg0-f68.google.com\n\t[74.125.83.68])\n\tby whitealder.osuosl.org (Postfix) with ESMTPS id 8A6F387129\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:34:59 +0000 (UTC)", "by mail-pg0-f68.google.com with SMTP id b1so44458355pgc.1\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 06 Jan 2017 08:34:59 -0800 (PST)", "from localhost.localdomain ([2001:470:b:9c3:9e5c:8eff:fe4f:f2d0])\n\tby smtp.gmail.com with ESMTPSA id\n\tr8sm119924610pfa.44.2017.01.06.08.07.37\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tFri, 06 Jan 2017 08:07:37 -0800 (PST)" ], "Authentication-Results": "ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"f/AMq5hX\"; dkim-atps=neutral", "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=gmail.com; s=20161025;\n\th=subject:from:to:cc:date:message-id:in-reply-to:references\n\t:user-agent:mime-version:content-transfer-encoding;\n\tbh=MJenGRfvnqe85jiaA7hUTsev8ikgUT2PD39usPQ2pao=;\n\tb=f/AMq5hXB02gI6gghuMLx/GheHRrR1y1iSwicI6+y7YwjF0Jb7qbQKiV2/SAbCYzfp\n\t91tcJkbu2IWb2C/WTnhZNXDJmf4j6y/aqTtOQOGCJGmmdbcnERn2tq9/8gNr96ue8Il4\n\tF0Nrg/8+KmL6upd7nG7BSbTtSW/xZOTPjwPGL43jcD6lM9bJvDQ6ECdcetTdhgppMAdm\n\tat4QIRep6VHjN+6Z5Ch+9BdM+BAISFtCihiMKU9cGADLv799Ih8/n3nP+GnqzJ1aaPDk\n\tulpGy/pLn8zD3Sz47iv7dyGyXMlcioilzvNtxlhuzk1O3mkfDRkP+iQkrmzuzOpnzS5c\n\ttCog==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:subject:from:to:cc:date:message-id:in-reply-to\n\t:references:user-agent:mime-version:content-transfer-encoding;\n\tbh=MJenGRfvnqe85jiaA7hUTsev8ikgUT2PD39usPQ2pao=;\n\tb=EOjIRh7iCh/SQ+aaiWTmSo68wLKBtVaucu4/smLnxXlvXDThuwVGEjYoo83FduwQGN\n\t1HHUmqyzWIjRcPHreh6U137N5Iego1i7xPqWerg1kaXCuiY+Cg12/560UAvFsCCi2he2\n\tpYJ0nk28V3WFOdL92E2qngZ1NrT3pnwP3tkOlFv9SuQnEjObSp8g8SUji1arK2MvYk57\n\tcwyEiIzQlpidGRlctbn9EfWqMmRSUmPB00ir+mLq53qS4GOkRuBNwh11wQtOfkeCIG8T\n\tpWIg1pH1OkW3SIPMsqZxRVenzeM7AGtqP6GcPwFzXup+5N8AMHydcSDVVpfTqJB7VoZe\n\t2/9A==", "X-Gm-Message-State": "AIkVDXIgLUHNCK74ELaPxnKGne2Yi1R7WY87EhNTIWTs/khbwMwuNr03STQ5zAhw6fLSrg==", "X-Received": "by 10.84.194.37 with SMTP id g34mr168888483pld.36.1483718858768; \n\tFri, 06 Jan 2017 08:07:38 -0800 (PST)", "From": "Alexander Duyck <alexander.duyck@gmail.com>", "To": "intel-wired-lan@lists.osuosl.org, jeffrey.t.kirsher@intel.com", "Date": "Fri, 06 Jan 2017 08:07:37 -0800", "Message-ID": "<20170106160735.1501.50042.stgit@localhost.localdomain>", "In-Reply-To": "<20170106155448.1501.31298.stgit@localhost.localdomain>", "References": "<20170106155448.1501.31298.stgit@localhost.localdomain>", "User-Agent": "StGit/0.17.1-dirty", "MIME-Version": "1.0", "Cc": "netdev@vger.kernel.org", "Subject": "[Intel-wired-lan] [next PATCH 09/11] ixgbe: Add private flag to\n\tcontrol buffer mode", "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>", "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": "From: Alexander Duyck <alexander.h.duyck@intel.com>\n\nSince there are potential drawbacks to the new Rx allocation approach I\nthought it best to add a \"chicken bit\" so that we can turn the feature off\nif in the event that a problem is found.\n\nIt also provides a means of validating the legacy Rx path in the event that\nwe are forced to fall back. At some point in the future when we are\nconvinced we don't need it anymore we might be able to drop the legacy-rx\nflag.\n\nSigned-off-by: Alexander Duyck <alexander.h.duyck@intel.com>\n---\n drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 47 ++++++++++++++++++++++\n 1 file changed, 47 insertions(+)", "diff": "diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c\nindex aa80ece9ea96..6466d828bc6f 100644\n--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c\n+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c\n@@ -151,6 +151,13 @@ struct ixgbe_stats {\n };\n #define IXGBE_TEST_LEN sizeof(ixgbe_gstrings_test) / ETH_GSTRING_LEN\n \n+static const char ixgbe_priv_flags_strings[][ETH_GSTRING_LEN] = {\n+#define IXGBE_PRIV_FLAGS_LEGACY_RX\tBIT(0)\n+\t\"legacy-rx\",\n+};\n+\n+#define IXGBE_PRIV_FLAGS_STR_LEN ARRAY_SIZE(ixgbe_priv_flags_strings)\n+\n /* currently supported speeds for 10G */\n #define ADVRTSD_MSK_10G (SUPPORTED_10000baseT_Full | \\\n \t\t\t SUPPORTED_10000baseKX4_Full | \\\n@@ -1002,6 +1009,8 @@ static void ixgbe_get_drvinfo(struct net_device *netdev,\n \n \tstrlcpy(drvinfo->bus_info, pci_name(adapter->pdev),\n \t\tsizeof(drvinfo->bus_info));\n+\n+\tdrvinfo->n_priv_flags = IXGBE_PRIV_FLAGS_STR_LEN;\n }\n \n static void ixgbe_get_ringparam(struct net_device *netdev,\n@@ -1141,6 +1150,8 @@ static int ixgbe_get_sset_count(struct net_device *netdev, int sset)\n \t\treturn IXGBE_TEST_LEN;\n \tcase ETH_SS_STATS:\n \t\treturn IXGBE_STATS_LEN;\n+\tcase ETH_SS_PRIV_FLAGS:\n+\t\treturn IXGBE_PRIV_FLAGS_STR_LEN;\n \tdefault:\n \t\treturn -EOPNOTSUPP;\n \t}\n@@ -1305,6 +1316,9 @@ static void ixgbe_get_strings(struct net_device *netdev, u32 stringset,\n \t\t}\n \t\t/* BUG_ON(p - data != IXGBE_STATS_LEN * ETH_GSTRING_LEN); */\n \t\tbreak;\n+\tcase ETH_SS_PRIV_FLAGS:\n+\t\tmemcpy(data, ixgbe_priv_flags_strings,\n+\t\t IXGBE_PRIV_FLAGS_STR_LEN * ETH_GSTRING_LEN);\n \t}\n }\n \n@@ -3386,6 +3400,37 @@ static int ixgbe_set_eee(struct net_device *netdev, struct ethtool_eee *edata)\n \treturn 0;\n }\n \n+static u32 ixgbe_get_priv_flags(struct net_device *netdev)\n+{\n+\tstruct ixgbe_adapter *adapter = netdev_priv(netdev);\n+\tu32 priv_flags = 0;\n+\n+\tif (adapter->flags2 & IXGBE_FLAG2_RX_LEGACY)\n+\t\tpriv_flags |= IXGBE_PRIV_FLAGS_LEGACY_RX;\n+\n+\treturn priv_flags;\n+}\n+\n+static int ixgbe_set_priv_flags(struct net_device *netdev, u32 priv_flags)\n+{\n+\tstruct ixgbe_adapter *adapter = netdev_priv(netdev);\n+\tunsigned int flags2 = adapter->flags2;\n+\n+\tflags2 &= ~IXGBE_FLAG2_RX_LEGACY;\n+\tif (priv_flags & IXGBE_PRIV_FLAGS_LEGACY_RX)\n+\t\tflags2 |= IXGBE_FLAG2_RX_LEGACY;\n+\n+\tif (flags2 != adapter->flags2) {\n+\t\tadapter->flags2 = flags2;\n+\n+\t\t/* reset interface to repopulate queues */\n+\t\tif (netif_running(netdev))\n+\t\t\tixgbe_reinit_locked(adapter);\n+\t}\n+\n+\treturn 0;\n+}\n+\n static const struct ethtool_ops ixgbe_ethtool_ops = {\n \t.get_settings = ixgbe_get_settings,\n \t.set_settings = ixgbe_set_settings,\n@@ -3422,6 +3467,8 @@ static int ixgbe_set_eee(struct net_device *netdev, struct ethtool_eee *edata)\n \t.set_eee\t\t= ixgbe_set_eee,\n \t.get_channels\t\t= ixgbe_get_channels,\n \t.set_channels\t\t= ixgbe_set_channels,\n+\t.get_priv_flags\t\t= ixgbe_get_priv_flags,\n+\t.set_priv_flags\t\t= ixgbe_set_priv_flags,\n \t.get_ts_info\t\t= ixgbe_get_ts_info,\n \t.get_module_info\t= ixgbe_get_module_info,\n \t.get_module_eeprom\t= ixgbe_get_module_eeprom,\n", "prefixes": [ "next", "09/11" ] }