From: David Ahern <redacted>
Date: Tue, 24 Jul 2018 09:14:01 -0600
I get the impression there is no longer a strong resistance against
moving the tables to per namespace, but deciding what is the right
approach to handle backwards compatibility. Correct? Changing the
accounting is inevitably going to be noticeable to some use case(s), but
with sysctl settings it is a simple runtime update once the user knows
to make the change.
neighbor entries round up to 512 byte allocations, so with the current
gc_thresh defaults (128/512/1024) 512k can be consumed. Using those
limits per namespace seems high which is why I suggested a per-namespace
default of (16/32/64) which amounts to 32k per namespace limit by
default. Open to other suggestions as well.
No objection from me about going to per-ns neigh tables.
About the defaults, I wonder if we can scale them to the amount of
memory given to the ns or something like that? I bet this will better
match the intended use of the ns.