[PATCH] Don't send MSG_WINBIND_ONLINE to idmap_child() in any child process

Jeremy Allison jra at samba.org
Tue Jan 13 23:28:38 GMT 2009


On Tue, Jan 13, 2009 at 10:43:09AM +0100, Stefan (metze) Metzmacher wrote:
> boyang schrieb:
> > Hi, everyone:
> >      If the trusted domain cannot go online, fork_child_dc_connect()
> > will be invoked periodically to fork() one child process, trying to
> > connect to DC.  look, fork_child_dc_connect() ---> getdcs() --->
> > get_dc_name_via_netlogon() ---> cm_connect_netlogon() --->
> > init_dc_connection() ---> cm_open_connection ---> set_domain_online(),
> > here send MSG_WINBIND_ONLINE to idmap_child(). It causes
> > MSG_WINBIND_ONLINE being sent to idmap_child() periodically, which cause
> > idmap child to fork and connect to the primary domain'DC even primary
> > domain is already online. :-)  It is very expensive, we must not want to
> > do that....
> > 
> > Please review the patches!
> > Thanks!
> 
> Shouldn't we just don't listen for MSG_WINBIND_ONLINE messages in the
> idmap child?

No, we need to handle them to go from offline -> online.

Jeremy.


More information about the samba-technical mailing list