From patchwork Sat Mar 31 19:58:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Dumazet X-Patchwork-Id: 893863 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.b="RNrIAnss"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40D8TC3sDRz9s3B for ; Sun, 1 Apr 2018 05:59:27 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752377AbeCaT7Z (ORCPT ); Sat, 31 Mar 2018 15:59:25 -0400 Received: from mail-pf0-f194.google.com ([209.85.192.194]:43114 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751787AbeCaT7W (ORCPT ); Sat, 31 Mar 2018 15:59:22 -0400 Received: by mail-pf0-f194.google.com with SMTP id j2so7462172pff.10 for ; Sat, 31 Mar 2018 12:59:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=ZGSkEDMwmcN38oBfAyFhFbxgZbaOh0BFb/srioGsfkI=; b=RNrIAnssfvF0RB3HA0rtJXg66J7LrMuoFc71boxIwIM0ANabwu6o/cfSDO3p+3Xd2X qACQne1oi4yJtUinesPkHfLAUZjkoCr/mJUix3VUMJy4i/fMpOoM0eYA7jH/Oh/sTotZ DpTvO5f/H1/4SR4aC4vJkE/awUpxEQNYkawKON9FWH0X6keEm6GFWqe8tn2c9HuM9utT QrHgEM6NFWW9ZDd6m0WXugTW0hDXHVdamCdW7DxoOAFYsG6+ibPHfaS4shfrZ//PpE+y PJD+nll1jz5WpbIbKskwtnd7a6Ygq5YjBBg1cEHBhb2aPGwPKaxT7Pk2KIBUiMfUz/Rv 6rhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=ZGSkEDMwmcN38oBfAyFhFbxgZbaOh0BFb/srioGsfkI=; b=nqKkddenv/nvvG4NsWZl4BVJ1luEeuHHGwVw1m2wmMUrWzPqlOyaJgrmzy4WrN0SbK C5MNdgIv4iIZiY1WDEfkvGRAv8TLvxKZxJbTpst4tp9YXIEOesGvQmZZVogS62ney+Ox hxcjztbrvF1lOUJcTustkLvQm2/b7JASN3DDQz7EGZ8jxbufOkQF4lROR4UUmZ5UQai+ rTjV2r1TIFWW8B1JZTN3MklEiFlLHVgsrBMuhrV2SfSE0fC3qzeSKRuTXS71slJ5vq7T mB1HBfRdNczA0kUJNoXcDA2vg947APYWFj820OWcGsbIe+sa848MghiN7v5AAzXixwBd Y6eA== X-Gm-Message-State: AElRT7H4zXRQR18gmR1mTsGnqc1ESHxiu3F7jtrRn30Bf+s89K4NqLLU YakAKj/IAiYZ/NhSQ77Nt4NGzw== X-Google-Smtp-Source: AIpwx4/updAOnxMDWyDQMK1I8fKaKRhECiTel0lNEfFK1YdMkkBgjItCldHQ3Ewdx5UGBXBXIPrYng== X-Received: by 10.99.120.74 with SMTP id t71mr2608048pgc.310.1522526361617; Sat, 31 Mar 2018 12:59:21 -0700 (PDT) Received: from localhost ([2620:15c:2c4:201:f5a:7eca:440a:3ead]) by smtp.gmail.com with ESMTPSA id b8sm19191960pgv.17.2018.03.31.12.59.20 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 31 Mar 2018 12:59:20 -0700 (PDT) From: Eric Dumazet To: "David S . Miller" Cc: netdev , Florian Westphal , Herbert Xu , Thomas Graf , Jesper Dangaard Brouer , Alexander Aring , Stefan Schmidt , Kirill Tkhai , Eric Dumazet , Eric Dumazet Subject: [PATCH v4 net-next 05/19] inet: frags: refactor lowpan_net_frag_init() Date: Sat, 31 Mar 2018 12:58:46 -0700 Message-Id: <20180331195900.183604-6-edumazet@google.com> X-Mailer: git-send-email 2.17.0.rc1.321.gba9d0f2565-goog In-Reply-To: <20180331195900.183604-1-edumazet@google.com> References: <20180331195900.183604-1-edumazet@google.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org We want to call lowpan_net_frag_init() earlier. Similar to commit "inet: frags: refactor ipv6_frag_init()" This is a prereq to "inet: frags: use rhashtables for reassembly units" Signed-off-by: Eric Dumazet --- net/ieee802154/6lowpan/reassembly.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/net/ieee802154/6lowpan/reassembly.c b/net/ieee802154/6lowpan/reassembly.c index 6badc055555b7baedac2051a1aaea15f9e9b180c..ddada12a044de293f904a1dc7a5ff398d089d101 100644 --- a/net/ieee802154/6lowpan/reassembly.c +++ b/net/ieee802154/6lowpan/reassembly.c @@ -615,14 +615,6 @@ int __init lowpan_net_frag_init(void) { int ret; - ret = lowpan_frags_sysctl_register(); - if (ret) - return ret; - - ret = register_pernet_subsys(&lowpan_frags_ops); - if (ret) - goto err_pernet; - lowpan_frags.hashfn = lowpan_hashfn; lowpan_frags.constructor = lowpan_frag_init; lowpan_frags.destructor = NULL; @@ -631,12 +623,22 @@ int __init lowpan_net_frag_init(void) lowpan_frags.frag_expire = lowpan_frag_expire; lowpan_frags.frags_cache_name = lowpan_frags_cache_name; ret = inet_frags_init(&lowpan_frags); + if (ret) + goto out; + + ret = lowpan_frags_sysctl_register(); + if (ret) + goto err_sysctl; + + ret = register_pernet_subsys(&lowpan_frags_ops); if (ret) goto err_pernet; - +out: return ret; err_pernet: lowpan_frags_sysctl_unregister(); +err_sysctl: + inet_frags_fini(&lowpan_frags); return ret; }