Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/712053/?format=api
{ "id": 712053, "url": "http://patchwork.ozlabs.org/api/patches/712053/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20170106161131.2030.4342.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": "<20170106161131.2030.4342.stgit@localhost.localdomain>", "list_archive_url": null, "date": "2017-01-06T16:11:31", "name": "[next,9/9] igb: Revert \"igb: Revert support for build_skb in igb\"", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "5806e1663e1822289b8d2fc98668d0c0b99d6015", "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/20170106161131.2030.4342.stgit@localhost.localdomain/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/712053/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/712053/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 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 3tw9xN4q2Kz9t0v\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat, 7 Jan 2017 04:08:39 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 70B8B89640;\n\tFri, 6 Jan 2017 17:08:37 +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 hgwWegkk-esi; Fri, 6 Jan 2017 17:08:35 +0000 (UTC)", "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 53B898965A;\n\tFri, 6 Jan 2017 17:08:34 +0000 (UTC)", "from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136])\n\tby ash.osuosl.org (Postfix) with ESMTP id D75321BFA5C\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 17:08:32 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n\tby silver.osuosl.org (Postfix) with ESMTP id D383530143\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 17:08:32 +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 bIAy8rt1GSug for <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 17:08:32 +0000 (UTC)", "from mail-pf0-f196.google.com (mail-pf0-f196.google.com\n\t[209.85.192.196])\n\tby silver.osuosl.org (Postfix) with ESMTPS id 345F73013F\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 6 Jan 2017 17:08:32 +0000 (UTC)", "by mail-pf0-f196.google.com with SMTP id y68so30218106pfb.1\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 06 Jan 2017 09:08:32 -0800 (PST)", "from localhost.localdomain ([2001:470:b:9c3:9e5c:8eff:fe4f:f2d0])\n\tby smtp.gmail.com with ESMTPSA id\n\tc2sm161096284pfl.66.2017.01.06.08.11.31\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tFri, 06 Jan 2017 08:11:32 -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=\"d3/tJaLU\"; 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=ug9yjd/WZuSsQu/uxGCySfBf/Gbw8vg2P39lpVMLqHY=;\n\tb=d3/tJaLULLryFkZih8DBvKPENYfezQeNtgvAZc9HjeDh+bH8DuFJ8uxv4g4dbC9F0I\n\tGsWGXg/+1wJGitpv2a03+RJJ9MePD98NnzMQaQKzL2GCAh3IYc7F5odIPs2myAaUwl4a\n\tqbFCiA7ANgNQWEqDka0fk5mMy6pm61TxvfZdKC5kJZgh2oCHguDjw/ksTc4kNQei8+b2\n\tYhQJHSbUgKnjXik5GfIxpdg6XITuEPsFW85PymJx5QO2P4c4vdske7TyB4cNKi/K5oNu\n\tIEAdyYoMMSBtNn8xiVzix/EYIPcU2O3C7ESIfC4KlrpqH6H1tNlLPiVgPkgS5IgNgCXX\n\tc48Q==", "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=ug9yjd/WZuSsQu/uxGCySfBf/Gbw8vg2P39lpVMLqHY=;\n\tb=RsG5Hw7fIoNHfTp+MBtHBEKbqOP1SeIPYy76ZZ5arpK1Mko6/yNMWMtx9sMMhMbLKS\n\t2fCUnSxNHpr0Vy0vho5obQOhAm+Pfu8gzL8G/joenacdyNEjPAC65LjAto642umjxpD4\n\tdVF8YyJW91jdcjSye9Jz5YVgvL8AuSrwRVmo65GXuUlufMZY8uQFrkmXJwAGzhI8xdDL\n\tOEZQFuzv4K2mZ4/beh6k+d5PIPU/VUmlIRqzwXYbxoPCpVD92+BLAgXX9kpdlw3EOyxN\n\tppSJVgM9baZHhsugSVQBFbNTioYUTXyS9MWj++Qo6XmPLuI8Gqzj5yPqN773ZjRpHGdc\n\tVKcg==", "X-Gm-Message-State": "AIkVDXL9qTmdl/3OybXnbSFSdRV4TWxN9yN0MKzki5iikL6Y/Wlbkim13qhYwRktHCh5fQ==", "X-Received": "by 10.84.142.1 with SMTP id 1mr165284744plw.87.1483719092516;\n\tFri, 06 Jan 2017 08:11:32 -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:31 -0800", "Message-ID": "<20170106161131.2030.4342.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 9/9] igb: Revert \"igb: Revert support\n\tfor build_skb in igb\"", "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\nThis reverts commit f9d40f6a9921 (\"igb: Revert support for build_skb in\nigb\") and adds a few changes to update it to work with the latest version\nof igb. We are now able to revert the removal of this due to the fact\nthat with the recent changes to the page count and the use of\nDMA_ATTR_SKIP_CPU_SYNC we can make the pages writable so we should not be\ninvalidating the additional data added when we call build_skb.\n\nSigned-off-by: Alexander Duyck <alexander.h.duyck@intel.com>\n---\n drivers/net/ethernet/intel/igb/igb_main.c | 47 +++++++++++++++++++++++++++++\n 1 file changed, 47 insertions(+)", "diff": "diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c\nindex dfb04d7ba502..bed155207d52 100644\n--- a/drivers/net/ethernet/intel/igb/igb_main.c\n+++ b/drivers/net/ethernet/intel/igb/igb_main.c\n@@ -7019,6 +7019,51 @@ static struct sk_buff *igb_construct_skb(struct igb_ring *rx_ring,\n \treturn skb;\n }\n \n+static struct sk_buff *igb_build_skb(struct igb_ring *rx_ring,\n+\t\t\t\t struct igb_rx_buffer *rx_buffer,\n+\t\t\t\t union e1000_adv_rx_desc *rx_desc,\n+\t\t\t\t unsigned int size)\n+{\n+\tvoid *va = page_address(rx_buffer->page) + rx_buffer->page_offset;\n+#if (PAGE_SIZE < 8192)\n+\tunsigned int truesize = igb_rx_pg_size(rx_ring) / 2;\n+#else\n+\tunsigned int truesize = SKB_DATA_ALIGN(sizeof(struct skb_shared_info)) +\n+\t\t\t\tSKB_DATA_ALIGN(IGB_SKB_PAD + size);\n+#endif\n+\tstruct sk_buff *skb;\n+\n+\t/* prefetch first cache line of first page */\n+\tprefetch(va);\n+#if L1_CACHE_BYTES < 128\n+\tprefetch(va + L1_CACHE_BYTES);\n+#endif\n+\n+\t/* build an skb to around the page buffer */\n+\tskb = build_skb(va - IGB_SKB_PAD, truesize);\n+\tif (unlikely(!skb))\n+\t\treturn NULL;\n+\n+\t/* update pointers within the skb to store the data */\n+\tskb_reserve(skb, IGB_SKB_PAD);\n+\t__skb_put(skb, size);\n+\n+\t/* pull timestamp out of packet data */\n+\tif (igb_test_staterr(rx_desc, E1000_RXDADV_STAT_TSIP)) {\n+\t\tigb_ptp_rx_pktstamp(rx_ring->q_vector, skb->data, skb);\n+\t\t__skb_pull(skb, IGB_TS_HDR_LEN);\n+\t}\n+\n+\t/* update buffer offset */\n+#if (PAGE_SIZE < 8192)\n+\trx_buffer->page_offset ^= truesize;\n+#else\n+\trx_buffer->page_offset += truesize;\n+#endif\n+\n+\treturn skb;\n+}\n+\n static inline void igb_rx_checksum(struct igb_ring *ring,\n \t\t\t\t union e1000_adv_rx_desc *rx_desc,\n \t\t\t\t struct sk_buff *skb)\n@@ -7248,6 +7293,8 @@ static int igb_clean_rx_irq(struct igb_q_vector *q_vector, const int budget)\n \t\t/* retrieve a buffer from the ring */\n \t\tif (skb)\n \t\t\tigb_add_rx_frag(rx_ring, rx_buffer, skb, size);\n+\t\telse if (ring_uses_build_skb(rx_ring))\n+\t\t\tskb = igb_build_skb(rx_ring, rx_buffer, rx_desc, size);\n \t\telse\n \t\t\tskb = igb_construct_skb(rx_ring, rx_buffer,\n \t\t\t\t\t\trx_desc, size);\n", "prefixes": [ "next", "9/9" ] }