netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Patrick McHardy <kaber@trash.net>
To: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: Pablo Neira Ayuso <pablo@netfilter.org>,
	Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>,
	"David S. Miller" <davem@davemloft.net>,
	Benjamin Poirier <benjamin.poirier@gmail.com>,
	netfilter-devel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [PATCH-next v3] netfilter: don't use module_init/exit in core IPV4 code
Date: Thu, 16 Jan 2014 20:32:44 +0000	[thread overview]
Message-ID: <20140116203244.GA21389@macbook.localnet> (raw)
In-Reply-To: <1389903843-1633-1-git-send-email-paul.gortmaker@windriver.com>

On Thu, Jan 16, 2014 at 03:24:03PM -0500, Paul Gortmaker wrote:
> The file net/ipv4/netfilter.o is created based on whether
> CONFIG_NETFILTER is set.  However that is defined as a bool, and
> hence this file with the core netfilter hooks will never be
> modular.  So using module_init as an alias for __initcall can be
> somewhat misleading.
> 
> Fix this up now, so that we can relocate module_init from
> init.h into module.h in the future.  If we don't do this, we'd
> have to add module.h to obviously non-modular code, and that
> would be a worse thing.  Also add an inclusion of init.h, as
> that was previously implicit here in the netfilter.c file.
> 
> Note that direct use of __initcall is discouraged, vs. one
> of the priority categorized subgroups.  As __initcall gets
> mapped onto device_initcall, our use of subsys_initcall (which
> seems to make sense for netfilter code) will thus change this
> registration from level 6-device to level 4-subsys (i.e. slightly
> earlier).  However no observable impact of that small difference
> has been observed during testing, or is expected. (i.e. the
> location of the netfilter messages in dmesg remains unchanged
> with respect to all the other surrounding messages.)
> 
> As for the module_exit, rather than replace it with __exitcall,
> we simply remove it, since it appears only UML does anything
> with those, and even for UML, there is no relevant cleanup
> to be done here.

Just to bring up the idea: there's no reason why we couldn't make
netfilter fully modular for individual AFs. I've seen quite a lot
of embedded systems that include the IPv6 netfilter core without
using it.

Its rather complicated to get all the dependencies of xtables
modules right though, so this is really just to bring up the
idea.

Your patch looks fine to me.

      reply	other threads:[~2014-01-16 20:32 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1389638147-30399-1-git-send-email-paul.gortmaker@windriver.com>
2014-01-15 20:57 ` [PATCH-next v2] netfilter: don't use module_init/exit in core IPV4 code Paul Gortmaker
2014-01-16 19:26   ` Benjamin Poirier
2014-01-16 19:38     ` Paul Gortmaker
2014-01-16 20:24     ` [PATCH-next v3] " Paul Gortmaker
2014-01-16 20:32       ` Patrick McHardy [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140116203244.GA21389@macbook.localnet \
    --to=kaber@trash.net \
    --cc=benjamin.poirier@gmail.com \
    --cc=davem@davemloft.net \
    --cc=kadlec@blackhole.kfki.hu \
    --cc=netdev@vger.kernel.org \
    --cc=netfilter-devel@vger.kernel.org \
    --cc=pablo@netfilter.org \
    --cc=paul.gortmaker@windriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).