[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b6fcc0a1002010225u4e74f9f0q633d73038234dc37@mail.gmail.com>
Date: Mon, 1 Feb 2010 12:25:24 +0200
From: Alexey Dobriyan <adobriyan@...il.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: Jon Masters <jonathan@...masters.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
netdev <netdev@...r.kernel.org>,
netfilter-devel <netfilter-devel@...r.kernel.org>,
Patrick McHardy <kaber@...sh.net>
Subject: Re: debug: nt_conntrack and KVM crash
On Mon, Feb 1, 2010 at 12:12 PM, Eric Dumazet <eric.dumazet@...il.com> wrote:
> Le lundi 01 février 2010 à 11:36 +0200, Alexey Dobriyan a écrit :
>> On Mon, Feb 1, 2010 at 11:32 AM, Jon Masters <jonathan@...masters.org> wrote:
>> > I hacked up a per-namespace version of hashtables (this needs doing
>> > anyway, since the global stuff is just waiting to break)
>>
>> Which ones? Conntrack hashtables are per-netns.
>
> It seems they are, but this is not a complete work :
They are per-netns.
It's not "complete", because right now there is no point in doing more.
nf_conntrack_max was rejected given the absense of per-netns kernel
memory consumption limiting.
> 1) Global settings (shared by all netns)
Only hashtable size which is module parameter and
there is no generic way to limit kernel memory (like beancounters).
> 2) nf_conntrack_cachep is shared, it should be not shared.
There is no need for it to be shared, unless you measured something.
> 3) nf_conntrack_untracked shared by all netns, it should be local.
>
> nf_conntrack_cleanup_net() can block forever because of this.
>
> while (atomic_read(&nf_conntrack_untracked.ct_general.use) > 1)
> schedule();
This is known, yes, thinking on it, as naive way was agreed to suck.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists