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 :) One timer for all looked simpler to me. Can there be an impact on performance if we have several GC timers for the several netns running? Benjamin -- B e n j a m i n T h e r y - BULL/DT/Open Software R&D http://www.bull.com _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers