Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/808603/?format=api
{ "id": 808603, "url": "http://patchwork.ozlabs.org/api/patches/808603/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/patch/150425797359.22227.15278983956249837004.stgit@firesoul/", "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": "<150425797359.22227.15278983956249837004.stgit@firesoul>", "list_archive_url": null, "date": "2017-09-01T09:26:13", "name": "[net,2/2] Revert \"net: fix percpu memory leaks\"", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "34cfa08d1d2462fb16d1458761b9c77649dc917a", "submitter": { "id": 13625, "url": "http://patchwork.ozlabs.org/api/people/13625/?format=api", "name": "Jesper Dangaard Brouer", "email": "brouer@redhat.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/150425797359.22227.15278983956249837004.stgit@firesoul/mbox/", "series": [ { "id": 984, "url": "http://patchwork.ozlabs.org/api/series/984/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=984", "date": "2017-09-01T09:26:03", "name": "net: revert lib/percpu_counter API for fragmentation mem accounting", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/984/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/808603/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/808603/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>)", "ext-mx09.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com", "ext-mx09.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=brouer@redhat.com" ], "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xkDQ65wFvz9t2x\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri, 1 Sep 2017 19:26:22 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751785AbdIAJ0U (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tFri, 1 Sep 2017 05:26:20 -0400", "from mx1.redhat.com ([209.132.183.28]:41488 \"EHLO mx1.redhat.com\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1751741AbdIAJ0S (ORCPT <rfc822;netdev@vger.kernel.org>);\n\tFri, 1 Sep 2017 05:26:18 -0400", "from smtp.corp.redhat.com\n\t(int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id C08DD64D85;\n\tFri, 1 Sep 2017 09:26:17 +0000 (UTC)", "from firesoul.localdomain (ovpn-200-42.brq.redhat.com\n\t[10.40.200.42])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id 7E6577E8E5;\n\tFri, 1 Sep 2017 09:26:14 +0000 (UTC)", "from [192.168.5.1] (localhost [IPv6:::1])\n\tby firesoul.localdomain (Postfix) with ESMTP id A6F583318E71C;\n\tFri, 1 Sep 2017 11:26:13 +0200 (CEST)" ], "DMARC-Filter": "OpenDMARC Filter v1.3.2 mx1.redhat.com C08DD64D85", "Subject": "[PATCH net 2/2] Revert \"net: fix percpu memory leaks\"", "From": "Jesper Dangaard Brouer <brouer@redhat.com>", "To": "netdev@vger.kernel.org", "Cc": "mkubecek@suse.cz, Florian Westphal <fw@strlen.de>,\n\tliujian56@huawei.com, Jesper Dangaard Brouer <brouer@redhat.com>", "Date": "Fri, 01 Sep 2017 11:26:13 +0200", "Message-ID": "<150425797359.22227.15278983956249837004.stgit@firesoul>", "In-Reply-To": "<150425790711.22227.12264977619066874632.stgit@firesoul>", "References": "<150425790711.22227.12264977619066874632.stgit@firesoul>", "User-Agent": "StGit/0.17.1-dirty", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "7bit", "X-Scanned-By": "MIMEDefang 2.79 on 10.5.11.12", "X-Greylist": "Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.38]);\n\tFri, 01 Sep 2017 09:26:17 +0000 (UTC)", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "This reverts commit 1d6119baf0610f813eb9d9580eb4fd16de5b4ceb.\n\nAfter reverting commit 6d7b857d541e (\"net: use lib/percpu_counter API\nfor fragmentation mem accounting\") then here is no need for this\nfix-up patch. As percpu_counter is no longer used, it cannot\nmemory leak it any-longer.\n\nFixes: 6d7b857d541e (\"net: use lib/percpu_counter API for fragmentation mem accounting\")\nFixes: 1d6119baf061 (\"net: fix percpu memory leaks\")\nSigned-off-by: Jesper Dangaard Brouer <brouer@redhat.com>\n---\n include/net/inet_frag.h | 7 +------\n net/ieee802154/6lowpan/reassembly.c | 11 +++--------\n net/ipv4/ip_fragment.c | 12 +++---------\n net/ipv6/netfilter/nf_conntrack_reasm.c | 12 +++---------\n net/ipv6/reassembly.c | 12 +++---------\n 5 files changed, 13 insertions(+), 41 deletions(-)", "diff": "diff --git a/include/net/inet_frag.h b/include/net/inet_frag.h\nindex fa635aa6d0b9..fc59e0775e00 100644\n--- a/include/net/inet_frag.h\n+++ b/include/net/inet_frag.h\n@@ -103,15 +103,10 @@ struct inet_frags {\n int inet_frags_init(struct inet_frags *);\n void inet_frags_fini(struct inet_frags *);\n \n-static inline int inet_frags_init_net(struct netns_frags *nf)\n+static inline void inet_frags_init_net(struct netns_frags *nf)\n {\n \tatomic_set(&nf->mem, 0);\n-\treturn 0;\n }\n-static inline void inet_frags_uninit_net(struct netns_frags *nf)\n-{\n-}\n-\n void inet_frags_exit_net(struct netns_frags *nf, struct inet_frags *f);\n \n void inet_frag_kill(struct inet_frag_queue *q, struct inet_frags *f);\ndiff --git a/net/ieee802154/6lowpan/reassembly.c b/net/ieee802154/6lowpan/reassembly.c\nindex 30d875dff6b5..f85b08baff16 100644\n--- a/net/ieee802154/6lowpan/reassembly.c\n+++ b/net/ieee802154/6lowpan/reassembly.c\n@@ -580,19 +580,14 @@ static int __net_init lowpan_frags_init_net(struct net *net)\n {\n \tstruct netns_ieee802154_lowpan *ieee802154_lowpan =\n \t\tnet_ieee802154_lowpan(net);\n-\tint res;\n \n \tieee802154_lowpan->frags.high_thresh = IPV6_FRAG_HIGH_THRESH;\n \tieee802154_lowpan->frags.low_thresh = IPV6_FRAG_LOW_THRESH;\n \tieee802154_lowpan->frags.timeout = IPV6_FRAG_TIMEOUT;\n \n-\tres = inet_frags_init_net(&ieee802154_lowpan->frags);\n-\tif (res)\n-\t\treturn res;\n-\tres = lowpan_frags_ns_sysctl_register(net);\n-\tif (res)\n-\t\tinet_frags_uninit_net(&ieee802154_lowpan->frags);\n-\treturn res;\n+\tinet_frags_init_net(&ieee802154_lowpan->frags);\n+\n+\treturn lowpan_frags_ns_sysctl_register(net);\n }\n \n static void __net_exit lowpan_frags_exit_net(struct net *net)\ndiff --git a/net/ipv4/ip_fragment.c b/net/ipv4/ip_fragment.c\nindex 9a8cfac503dc..46408c220d9d 100644\n--- a/net/ipv4/ip_fragment.c\n+++ b/net/ipv4/ip_fragment.c\n@@ -844,8 +844,6 @@ static void __init ip4_frags_ctl_register(void)\n \n static int __net_init ipv4_frags_init_net(struct net *net)\n {\n-\tint res;\n-\n \t/* Fragment cache limits.\n \t *\n \t * The fragment memory accounting code, (tries to) account for\n@@ -871,13 +869,9 @@ static int __net_init ipv4_frags_init_net(struct net *net)\n \n \tnet->ipv4.frags.max_dist = 64;\n \n-\tres = inet_frags_init_net(&net->ipv4.frags);\n-\tif (res)\n-\t\treturn res;\n-\tres = ip4_frags_ns_ctl_register(net);\n-\tif (res)\n-\t\tinet_frags_uninit_net(&net->ipv4.frags);\n-\treturn res;\n+\tinet_frags_init_net(&net->ipv4.frags);\n+\n+\treturn ip4_frags_ns_ctl_register(net);\n }\n \n static void __net_exit ipv4_frags_exit_net(struct net *net)\ndiff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c\nindex 986d4ca38832..b263bf3a19f7 100644\n--- a/net/ipv6/netfilter/nf_conntrack_reasm.c\n+++ b/net/ipv6/netfilter/nf_conntrack_reasm.c\n@@ -622,18 +622,12 @@ EXPORT_SYMBOL_GPL(nf_ct_frag6_gather);\n \n static int nf_ct_net_init(struct net *net)\n {\n-\tint res;\n-\n \tnet->nf_frag.frags.high_thresh = IPV6_FRAG_HIGH_THRESH;\n \tnet->nf_frag.frags.low_thresh = IPV6_FRAG_LOW_THRESH;\n \tnet->nf_frag.frags.timeout = IPV6_FRAG_TIMEOUT;\n-\tres = inet_frags_init_net(&net->nf_frag.frags);\n-\tif (res)\n-\t\treturn res;\n-\tres = nf_ct_frag6_sysctl_register(net);\n-\tif (res)\n-\t\tinet_frags_uninit_net(&net->nf_frag.frags);\n-\treturn res;\n+\tinet_frags_init_net(&net->nf_frag.frags);\n+\n+\treturn nf_ct_frag6_sysctl_register(net);\n }\n \n static void nf_ct_net_exit(struct net *net)\ndiff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c\nindex e1da5b888cc4..846012eae526 100644\n--- a/net/ipv6/reassembly.c\n+++ b/net/ipv6/reassembly.c\n@@ -714,19 +714,13 @@ static void ip6_frags_sysctl_unregister(void)\n \n static int __net_init ipv6_frags_init_net(struct net *net)\n {\n-\tint res;\n-\n \tnet->ipv6.frags.high_thresh = IPV6_FRAG_HIGH_THRESH;\n \tnet->ipv6.frags.low_thresh = IPV6_FRAG_LOW_THRESH;\n \tnet->ipv6.frags.timeout = IPV6_FRAG_TIMEOUT;\n \n-\tres = inet_frags_init_net(&net->ipv6.frags);\n-\tif (res)\n-\t\treturn res;\n-\tres = ip6_frags_ns_sysctl_register(net);\n-\tif (res)\n-\t\tinet_frags_uninit_net(&net->ipv6.frags);\n-\treturn res;\n+\tinet_frags_init_net(&net->ipv6.frags);\n+\n+\treturn ip6_frags_ns_sysctl_register(net);\n }\n \n static void __net_exit ipv6_frags_exit_net(struct net *net)\n", "prefixes": [ "net", "2/2" ] }