Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/534734/?format=api
{ "id": 534734, "url": "http://patchwork.ozlabs.org/api/patches/534734/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/1445572173-15402-2-git-send-email-makita.toshiaki@lab.ntt.co.jp/", "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": "<1445572173-15402-2-git-send-email-makita.toshiaki@lab.ntt.co.jp>", "list_archive_url": null, "date": "2015-10-23T03:49:30", "name": "[net-next,1/4] net: Add ndo_enc_hdr_len to notify extra header room for encapsulated frames", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "9c23dce97319e85bc9f41be0434ada41253a879b", "submitter": { "id": 22461, "url": "http://patchwork.ozlabs.org/api/people/22461/?format=api", "name": "Toshiaki Makita", "email": "makita.toshiaki@lab.ntt.co.jp" }, "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/1445572173-15402-2-git-send-email-makita.toshiaki@lab.ntt.co.jp/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/534734/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/534734/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 fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\tby ozlabs.org (Postfix) with ESMTP id B6A25141314\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 23 Oct 2015 15:28:55 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 066958BEFC;\n\tFri, 23 Oct 2015 04:28:55 +0000 (UTC)", "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id xCEn4tuQm_bY; Fri, 23 Oct 2015 04:28:54 +0000 (UTC)", "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 846598BDDE;\n\tFri, 23 Oct 2015 04:28:54 +0000 (UTC)", "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\tby ash.osuosl.org (Postfix) with ESMTP id 490C21C105D\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 23 Oct 2015 04:28:53 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 459A48BCE2\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 23 Oct 2015 04:28:53 +0000 (UTC)", "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id u3GprzYoVXMC for <intel-wired-lan@lists.osuosl.org>;\n\tFri, 23 Oct 2015 04:28:51 +0000 (UTC)", "from tama500.ecl.ntt.co.jp (tama500.ecl.ntt.co.jp [129.60.39.148])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 67FCE8BDDE\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri, 23 Oct 2015 04:28:51 +0000 (UTC)", "from vc2.ecl.ntt.co.jp (vc2.ecl.ntt.co.jp [129.60.86.154])\n\tby tama500.ecl.ntt.co.jp (8.13.8/8.13.8) with ESMTP id t9N3niID012457;\n\tFri, 23 Oct 2015 12:49:44 +0900", "from vc2.ecl.ntt.co.jp (localhost [127.0.0.1])\n\tby vc2.ecl.ntt.co.jp (Postfix) with ESMTP id 125895F611;\n\tFri, 23 Oct 2015 12:49:44 +0900 (JST)", "from imail3.m.ecl.ntt.co.jp (imail3.m.ecl.ntt.co.jp [129.60.5.248])\n\tby vc2.ecl.ntt.co.jp (Postfix) with ESMTP id 03B225F58E;\n\tFri, 23 Oct 2015 12:49:44 +0900 (JST)", "from ubuntu-vm-makita ([129.60.241.200])\n\tby imail3.m.ecl.ntt.co.jp (8.13.8/8.13.8) with ESMTP id\n\tt9N3nhKs026652; Fri, 23 Oct 2015 12:49:43 +0900", "by ubuntu-vm-makita (Postfix, from userid 1000)\n\tid A93CA1E09FD; Fri, 23 Oct 2015 12:49:37 +0900 (JST)" ], "X-Virus-Scanned": [ "amavisd-new at osuosl.org", "amavisd-new at osuosl.org" ], "X-Greylist": "from auto-whitelisted by SQLgrey-1.7.6", "From": "Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>", "To": "\"David S . Miller\" <davem@davemloft.net>", "Date": "Fri, 23 Oct 2015 12:49:30 +0900", "Message-Id": "<1445572173-15402-2-git-send-email-makita.toshiaki@lab.ntt.co.jp>", "X-Mailer": "git-send-email 1.8.1.2", "In-Reply-To": "<1445572173-15402-1-git-send-email-makita.toshiaki@lab.ntt.co.jp>", "References": "<1445572173-15402-1-git-send-email-makita.toshiaki@lab.ntt.co.jp>", "X-TM-AS-MML": "disable", "Cc": "netdev@vger.kernel.org, Vlad Yasevich <vyasevich@gmail.com>,\n\tStephen Hemminger <stephen@networkplumber.org>,\n\tintel-wired-lan@lists.osuosl.org,\n\tToshiaki Makita <makita.toshiaki@lab.ntt.co.jp>,\n\tPatrick McHardy <kaber@trash.net>", "Subject": "[Intel-wired-lan] [PATCH net-next 1/4] net: Add ndo_enc_hdr_len to\n\tnotify extra header room for encapsulated frames", "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": "Currently most NICs reserve 1522 bytes space for frames to handle 4\nbytes VLAN header in addition to 1518, maximum size of ethernet frame.\nThis is, however, not sufficient when stacked vlan or other encapsulation\nprotocols are used.\nTo accommodate this, add .ndo_enc_hdr_len() and inform drivers of needed\nencapsulation header size.\n\nSigned-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>\n---\n include/linux/netdevice.h | 9 +++++++++\n net/core/dev.c | 36 ++++++++++++++++++++++++++++++++++++\n 2 files changed, 45 insertions(+)", "diff": "diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h\nindex 69fdd42..4d2ce91 100644\n--- a/include/linux/netdevice.h\n+++ b/include/linux/netdevice.h\n@@ -1054,6 +1054,10 @@ typedef u16 (*select_queue_fallback_t)(struct net_device *dev,\n *\tThis function is used to pass protocol port error state information\n *\tto the switch driver. The switch driver can react to the proto_down\n * by doing a phys down on the associated switch port.\n+ * int (*ndo_enc_hdr_len)(struct net_device *dev, int hdr_len);\n+ *\tCalled to notify addtional encapsulation header length to reserve.\n+ *\tImplements should reserve hdr_len room in addition to MTU to handle\n+ *\tencapsulated frames.\n *\n */\n struct net_device_ops {\n@@ -1227,6 +1231,8 @@ struct net_device_ops {\n \tint\t\t\t(*ndo_get_iflink)(const struct net_device *dev);\n \tint\t\t\t(*ndo_change_proto_down)(struct net_device *dev,\n \t\t\t\t\t\t\t bool proto_down);\n+\tint\t\t\t(*ndo_enc_hdr_len)(struct net_device *dev,\n+\t\t\t\t\t\t int hdr_len);\n };\n \n /**\n@@ -1387,6 +1393,7 @@ enum netdev_priv_flags {\n *\t@if_port:\tSelectable AUI, TP, ...\n *\t@dma:\t\tDMA channel\n *\t@mtu:\t\tInterface MTU value\n+ *\t@enc_hdr_len:\tAdditional encapsulation header length to MTU\n *\t@type:\t\tInterface hardware type\n *\t@hard_header_len: Hardware header length\n *\n@@ -1607,6 +1614,7 @@ struct net_device {\n \tunsigned char\t\tdma;\n \n \tunsigned int\t\tmtu;\n+\tunsigned int\t\tenc_hdr_len;\n \tunsigned short\t\ttype;\n \tunsigned short\t\thard_header_len;\n \n@@ -3021,6 +3029,7 @@ int dev_change_name(struct net_device *, const char *);\n int dev_set_alias(struct net_device *, const char *, size_t);\n int dev_change_net_namespace(struct net_device *, struct net *, const char *);\n int dev_set_mtu(struct net_device *, int);\n+int dev_set_enc_hdr_len(struct net_device *, int);\n void dev_set_group(struct net_device *, int);\n int dev_set_mac_address(struct net_device *, struct sockaddr *);\n int dev_change_carrier(struct net_device *, bool new_carrier);\ndiff --git a/net/core/dev.c b/net/core/dev.c\nindex 1225b4b..056a16e 100644\n--- a/net/core/dev.c\n+++ b/net/core/dev.c\n@@ -6024,6 +6024,42 @@ int dev_set_mtu(struct net_device *dev, int new_mtu)\n EXPORT_SYMBOL(dev_set_mtu);\n \n /**\n+ *\tdev_set_enc_hdr_len - Expand encapsulation header room\n+ *\t@dev: device\n+ *\t@new_len: new length\n+ */\n+int dev_set_enc_hdr_len(struct net_device *dev, int new_len)\n+{\n+\tconst struct net_device_ops *ops = dev->netdev_ops;\n+\n+\tif (new_len < 0)\n+\t\treturn -EINVAL;\n+\n+\tif (!netif_device_present(dev))\n+\t\treturn -ENODEV;\n+\n+\tif (new_len <= dev->enc_hdr_len)\n+\t\treturn 0;\n+\n+\tif (ops->ndo_enc_hdr_len) {\n+\t\tint err;\n+\n+\t\t/* This function can be called from child user/net namespace */\n+\t\tif (!ns_capable(dev_net(dev)->user_ns, CAP_NET_ADMIN))\n+\t\t\treturn -EPERM;\n+\n+\t\terr = ops->ndo_enc_hdr_len(dev, new_len);\n+\t\tif (err)\n+\t\t\treturn err;\n+\t}\n+\n+\tdev->enc_hdr_len = new_len;\n+\n+\treturn 0;\n+}\n+EXPORT_SYMBOL(dev_set_enc_hdr_len);\n+\n+/**\n *\tdev_set_group - Change group this device belongs to\n *\t@dev: device\n *\t@new_group: group this device should belong to\n", "prefixes": [ "net-next", "1/4" ] }