Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/711992/?format=api
{ "id": 711992, "url": "http://patchwork.ozlabs.org/api/patches/711992/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20170106161107.2030.21429.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": "<20170106161107.2030.21429.stgit@localhost.localdomain>", "list_archive_url": null, "date": "2017-01-06T16:11:07", "name": "[next,5/9] igb: Limit maximum frame Rx based on MTU", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "b375d22985bb6dbf2395d584f8da4747467fff87", "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/20170106161107.2030.21429.stgit@localhost.localdomain/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/711992/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/711992/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 3tw8g62D9Mz9sXx\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat, 7 Jan 2017 03:11:14 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id C06FE8303D;\n\tFri, 6 Jan 2017 16:11:12 +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 t+l8gdLBmSSo; Fri, 6 Jan 2017 16:11:12 +0000 (UTC)", "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 09990820CE;\n\tFri, 6 Jan 2017 16:11:12 +0000 (UTC)", "from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\tby ash.osuosl.org (Postfix) with ESMTP id 246191BFA57\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:11:10 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n\tby whitealder.osuosl.org (Postfix) with ESMTP id 1D20681E96\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:11:10 +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 O07SV8K1czYt for <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:11:08 +0000 (UTC)", "from mail-pf0-f195.google.com (mail-pf0-f195.google.com\n\t[209.85.192.195])\n\tby whitealder.osuosl.org (Postfix) with ESMTPS id C469B8215E\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 16:11:08 +0000 (UTC)", "by mail-pf0-f195.google.com with SMTP id b22so3775249pfd.3\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 06 Jan 2017 08:11:08 -0800 (PST)", "from localhost.localdomain ([2001:470:b:9c3:9e5c:8eff:fe4f:f2d0])\n\tby smtp.gmail.com with ESMTPSA id\n\ta68sm162546303pgc.31.2017.01.06.08.11.07\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tFri, 06 Jan 2017 08:11:07 -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=\"sx4zfo0g\"; 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:date:message-id:in-reply-to:references:user-agent\n\t:mime-version:content-transfer-encoding;\n\tbh=yw7E8nniqRXzkAeYa1SSpW6uCdNtpxrucqcKDSlMDqw=;\n\tb=sx4zfo0g0wsVwCG/9ifUIgs0c8zniPwRHhWcu9Nint2nP6d5HRok9zfGmPki6yS4hL\n\t8h3f6J5flCLdnSOX9Mob8swhNrz+WypWBSWI9lwilaXs2k86I5E4SBe724MnFVB7sVnR\n\tUePH2tVsS5e5TbTwXXWIrpKClCTIhwzl5KF5ly0u3GfCy/nMhxAqxUFGQ08TvnEC/Lrt\n\tukR/r3Ost1+igRrPurxQ6F2PlpgsnNr6kN1QisKPdQOwVZjj5Uhjjs2wSLT50HS58wWD\n\tPJZ2KByhdrqopGcDeUatHdK9OMglloMt79E6bwDgPpFYmvUMVF18WuFYSHR8Pi+3b7NI\n\tgJ+Q==", "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:date:message-id:in-reply-to\n\t:references:user-agent:mime-version:content-transfer-encoding;\n\tbh=yw7E8nniqRXzkAeYa1SSpW6uCdNtpxrucqcKDSlMDqw=;\n\tb=LJ91aynlDZpbNm0Piq77vrXwxiNMmKGbEtU2dbedu+xxht1MN91bncBrldphVHJffY\n\tZ0RhrrTSY3qYkGRY5+jc9JjTtcrtIb18w3kTTEkfLxaow+IqYu8xRwmivd6oJTlOnAj+\n\t9z6w2blsD2xUW2TiPmsFohEc9m7EipD+y0fEtQV+ucrSTeFd1k1jR0aLB2B0qbJgQHJq\n\tlpqKI0oVVDvw5bq3lmrwRiYfuHrm/tbEu7aAc8QYyDJ0sX3QQIBm/o4Lv3ZO9majpAr4\n\tjbS5KRSKoXSiXR3YcvPbSSLVvRLii+a3qEEkpQiXtW7zzOL3BBKd+mvPJ7QxBfSoyYjK\n\tWK8w==", "X-Gm-Message-State": "AIkVDXJh2YaPVlgJR1WCnL5qh3UJdvwPDPacQWoljWVD6ESboxUB3mlWrRdOnD6ad+QjgQ==", "X-Received": "by 10.84.143.68 with SMTP id 62mr168053240ply.63.1483719068213; \n\tFri, 06 Jan 2017 08:11:08 -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:11:07 -0800", "Message-ID": "<20170106161107.2030.21429.stgit@localhost.localdomain>", "In-Reply-To": "<20170106160850.2030.39073.stgit@localhost.localdomain>", "References": "<20170106160850.2030.39073.stgit@localhost.localdomain>", "User-Agent": "StGit/0.17.1-dirty", "MIME-Version": "1.0", "Subject": "[Intel-wired-lan] [next PATCH 5/9] igb: Limit maximum frame Rx\n\tbased on MTU", "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\nIn order to support the use of build_skb going forward it will be necessary\nto place a maximum limit on the amount of data we can receive when jumbo\nframes is not enabled. In order to do this I am adding a new upper limit\nfor receive based on the size of a 2K buffer minus padding.\n\nSigned-off-by: Alexander Duyck <alexander.h.duyck@intel.com>\n---\n drivers/net/ethernet/intel/igb/igb.h | 10 +++++++++-\n drivers/net/ethernet/intel/igb/igb_main.c | 16 ++++++++++++----\n 2 files changed, 21 insertions(+), 5 deletions(-)", "diff": "diff --git a/drivers/net/ethernet/intel/igb/igb.h b/drivers/net/ethernet/intel/igb/igb.h\nindex a638254f4e06..a74928cc0e58 100644\n--- a/drivers/net/ethernet/intel/igb/igb.h\n+++ b/drivers/net/ethernet/intel/igb/igb.h\n@@ -143,8 +143,17 @@ struct vf_data_storage {\n #define IGB_RXBUFFER_256\t256\n #define IGB_RXBUFFER_2048\t2048\n #define IGB_RX_HDR_LEN\t\tIGB_RXBUFFER_256\n+#define IGB_TS_HDR_LEN\t\t16\n #define IGB_RX_BUFSZ\t\tIGB_RXBUFFER_2048\n \n+#define IGB_SKB_PAD\t\t(NET_SKB_PAD + NET_IP_ALIGN)\n+#if (PAGE_SIZE < 8192)\n+#define IGB_MAX_FRAME_BUILD_SKB \\\n+\t(SKB_WITH_OVERHEAD(IGB_RXBUFFER_2048) - IGB_SKB_PAD - IGB_TS_HDR_LEN)\n+#else\n+#define IGB_MAX_FRAME_BUILD_SKB (IGB_RXBUFFER_2048 - IGB_TS_HDR_LEN)\n+#endif\n+\n /* How many Rx Buffers do we bundle into one write to the hardware ? */\n #define IGB_RX_BUFFER_WRITE\t16 /* Must be power of 2 */\n \n@@ -561,7 +570,6 @@ struct igb_adapter {\n #define IGB_DMCTLX_DCFLUSH_DIS\t0x80000000 /* Disable DMA Coal Flush */\n \n #define IGB_82576_TSYNC_SHIFT\t19\n-#define IGB_TS_HDR_LEN\t\t16\n enum e1000_state_t {\n \t__IGB_TESTING,\n \t__IGB_RESETTING,\ndiff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c\nindex bd7e7fbe7862..d38170af8df8 100644\n--- a/drivers/net/ethernet/intel/igb/igb_main.c\n+++ b/drivers/net/ethernet/intel/igb/igb_main.c\n@@ -4250,7 +4250,7 @@ static void igb_set_rx_mode(struct net_device *netdev)\n \tstruct igb_adapter *adapter = netdev_priv(netdev);\n \tstruct e1000_hw *hw = &adapter->hw;\n \tunsigned int vfn = adapter->vfs_allocated_count;\n-\tu32 rctl = 0, vmolr = 0;\n+\tu32 rctl = 0, vmolr = 0, rlpml = MAX_JUMBO_FRAME_SIZE;\n \tint count;\n \n \t/* Check for Promiscuous and All Multicast modes */\n@@ -4322,12 +4322,20 @@ static void igb_set_rx_mode(struct net_device *netdev)\n \tvmolr |= rd32(E1000_VMOLR(vfn)) &\n \t\t ~(E1000_VMOLR_ROPE | E1000_VMOLR_MPME | E1000_VMOLR_ROMPE);\n \n-\t/* enable Rx jumbo frames, no need for restriction */\n+\t/* enable Rx jumbo frames, restrict as needed to support build_skb */\n \tvmolr &= ~E1000_VMOLR_RLPML_MASK;\n-\tvmolr |= MAX_JUMBO_FRAME_SIZE | E1000_VMOLR_LPE;\n+#if (PAGE_SIZE < 8192)\n+\tif (adapter->max_frame_size <= IGB_MAX_FRAME_BUILD_SKB) {\n+\t\tif (!adapter->vfs_allocated_count)\n+\t\t\trlpml = IGB_MAX_FRAME_BUILD_SKB;\n+\t\tvmolr |= IGB_MAX_FRAME_BUILD_SKB;\n+\t} else\n+#endif\n+\t\tvmolr |= MAX_JUMBO_FRAME_SIZE;\n+\tvmolr |= E1000_VMOLR_LPE;\n \n \twr32(E1000_VMOLR(vfn), vmolr);\n-\twr32(E1000_RLPML, MAX_JUMBO_FRAME_SIZE);\n+\twr32(E1000_RLPML, rlpml);\n \n \tigb_restore_vf_multicasts(adapter);\n }\n", "prefixes": [ "next", "5/9" ] }