[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080822113028.GB2321@x200.localdomain>
Date: Fri, 22 Aug 2008 15:30:28 +0400
From: adobriyan@...il.com
To: Jan Engelhardt <jengelh@...ozas.de>
Cc: kaber@...sh.net, netfilter-devel@...r.kernel.org,
netdev@...r.kernel.org, containers@...ts.linux-foundation.org
Subject: Re: [PATCH 20/38] netns ct: NOTRACK in netns
On Thu, Aug 21, 2008 at 07:06:37PM -0400, Jan Engelhardt wrote:
> On Thursday 2008-08-21 18:04, adobriyan@...il.com wrote:
>
> >Make untracked conntrack per-netns.
>
> Why? It does not store any useful information per se, it is
> merely used to add a third type of ct, iow:
>
> (a) ct==NULL
> (b) ct!=NULL
> (c) ct==&untracked
>
> mmap(2)'s return value for example has something similar:
>
> (a) mmap(...)==NULL
> (b) mmap(...)==MMAP_FAILED
> (c) otherwise
>
> The untracked ct is a singleton, and should stay one, unless
> there are further reasons not to do so.
We wait for untracked ct refcount to drop to 1 back:
/* wait until all references to nf_conntrack_untracked are dropped */
while (atomic_read(&nf_conntrack_untracked.ct_general.use) > 1)
schedule();
Consequently it should be one per netns, otherwise netns A can prevent
netns B from stopping.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists