Re: [PATCH] [NETNS49] support for per/namespace routing cache cleanup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Denis V. Lunev wrote:
Benjamin Thery wrote:
Denis V. Lunev wrote:
Benjamin Thery wrote:
Denis V. Lunev wrote:
Daniel Lezcano wrote:
Oh, by the way, I forgot something important you spotted with the list
protected by the mutex.

When looking at ipv6/fib_hash.c with Benjamin, we need to browse the
network namespaces list for the garbage collecting, but we are in an
interrupt handler, so I can not use rtnl_lock.
where exactly....
Actually, it is in net/ipv6/ip6_fib.c, in fib6_clean_all().

fib6_clean_all() is called by fib6_run_gc() handler of the
ip6_fib_timer. If we don't want to have one such timer per net
namespace, in fib6_clean_all() we have to go through all net to clean
their own
fib_table_hash (using for_each_net() protected by rtnl_lock).
after careful thinking, one timer per/namespace looks better for me :)

Why? :)
Then you'll have to find a way pass the target net to fib6_run_gc() (the timer handler). current->nsproxy->net_ns won't work :)

sorry for spam :) forget to mention that the namespace can be passed via timer data :) yes - additional structure will be required

By the way, why do you, guys, so dislike our approach :) In that case there will be no problem to get context from currrent. Yes. In soft interrupt also :))

the approach of the patchset is : we don't use current->nsproxy->net_ns.
_______________________________________________
Containers mailing list
Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/containers

[Index of Archives]     [Cgroups]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux