On 12/20/2013 02:40 AM, Eric Paris wrote: > On Thu, 2013-12-19 at 11:59 +0800, Gao feng wrote: >> On 07/17/2013 04:32 AM, Richard Guy Briggs wrote: >>> Convert audit from only listening in init_net to use register_pernet_subsys() >>> to dynamically manage the netlink socket list. >>> >>> Signed-off-by: Richard Guy Briggs <rgb@xxxxxxxxxx> >>> --- >> >> I think it's the time for us to discuss if we should revert this >> commit, since this one prevent me from continuing to achieve >> audit namespace. >> >> >> The major problem is in kaudit_send_skb, we have no idea which >> audit sock the skb should send to. > > right, we have problems here no matter what... > > If we stick with the current approach you will need to know socket + > portid. With your approach one only needs to know portid. Since these > are can both be part of the audit_ns structure I don't see a huge > difference... > >> we have to store audit_sock >> into auditns(auditns will be passed to kauditd_send_skb), >> this will cause auditns have to get a reference of netns. >> and for some reason(netfilter audit target), netns will >> get reference of auditns too. this is terrible... > > I'm not sure I agree/understand this entirely... > My brain must be destroyed, I need to think about if auditns should get reference of netns. it's not clear to me now. :( but I intend to think you are right. >> So why not we revert this one, and use a very simple one to >> replace it? the below patch will save us from the refer to >> each other case, achieve the same effect. >> >> what's your opinion? > > Help me go all the way back to the beginning. What's our end goal here > again? > > When thinking about this I realized we have another problem that I don't > think we've considered. Which makes me lean away from the single > socket/kauditd :( > > I we have one socket and one kauditd ANY auditd can completely freeze > the audit system. Which seems problematic, especially if there isn't > equal levels of trust between the different namespaces... If one auditd > gets hung (intentionally or not) the kernel will never send another > audit message.... > > Makes me think we really need a kauditd thread per namespace, possibly > an skb queue per namespace. At which point an audit socket per > namespace makes a lot of sense too.... > You are right, and My prototype supports per kauditd/auditd/sbk queue per audit namespace. one auditd freeze in one auditns will not affect audit subsystem in another auditns. Thanks! _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/containers