Hi Pablo, On Thu, Jan 12, 2017 at 7:11 PM, Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> wrote: > On Thu, Jan 12, 2017 at 06:37:54PM +0800, fgao@xxxxxxxxxx wrote: >> From: Feng <fgao@xxxxxxxxxx> >> >> The rcu lock protect is added 3 years ago with the commit >> e688a7f8c6cb7a18aae7e55ccdd175f0ad9e69c0. But I find the dump >> operation is protected by the nfnl_lock in the current codes. The >> dump is a synchronization opertion in the netlink callback function >> which is protected by the nfnl_lock. > > nfnl_lock() only protects the first call, follow up recvmsg() calls in > rely on rcu. Please, see netlink_dump(). Thanks your detail explanation. Actually I read the netlink_dump before, but fail to find any valuable info. Now I get the reason with your info "recvmsg" and "first call". The netlink_recvmsg would try to invoke the dump callback again sometimes. Thank you very much. Regards Feng -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html