Howard Chu wrote: > [email protected] wrote: >> Full_Name: Jan Vcelak >> Version: 2.4.29 >> OS: Linux >> URL: ftp://ftp.openldap.org/incoming/ >> Submission from: (NULL) (209.132.186.34) >> >> >> There is a possible regression caused by >> 06ec9f1db2bb9dc304a4adcd0d0506203cf9e6b6. >> >> SSSD's event loop listens for events on a file descriptor retrieved using >> ber_sockbuf_ctrl(sb, LBER_SB_OPT_GET_FD,&ber_fd). If there are some data to >> be >> read, processing using ldap_result is triggered. (Internally, tevent from >> Samba >> project is used, which uses epoll.) But sometimes, ldap_result() returns -1 >> error code. It seems that the descriptor is marked as readable untimely. >> >> This problem is not present with OpenLDAP 2.4.26, it appears with all future >> versions. When the mentioned commit is reverted, everything works well. >> >> Original report in our Bugzilla: >> https://bugzilla.redhat.com/show_bug.cgi?id=771484 > > Thanks for the report and the detailed investigation, but this sounds to me > like a kernel bug. We expect select/epoll/whatever to only return that a > descriptor is readable if it actually is readable. (Gosh, who'dathunkit.) If > not, then these syscalls are not behaving as documented/designed.
By the way, the patch in question was due to ITS#7035; you should read that ITS for the motivation behind this change. -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/
