Found by Herb. The client_is_idle() function which determines the removal of inactive client connections incorrectly flags as idle the condition where a request has been sent to a winbindd child, (state->request != NULL), but no reply has yet been received from the child (state->request == NULL). With a heavily loaded winbindd this can lead to client connections being terminated and responses being incorrectly returned. Patch for 3.6.next to follow.
Created attachment 7796 [details] git-am fix for 3.6.next.
Created attachment 7797 [details] git-am fix for 3.5.next Back-port of the patch for 3.5.next.
Comment on attachment 7797 [details] git-am fix for 3.5.next Herb for some reason can't set the '+' flag, so I'm setting it for him. Jeremy.
Re-assigning to Karolin for inclusion in 3.5.next and 3.6.next. Jeremy.
Hmmm. Used to be able to mark bugs "blocker", now "critical" seems the highest this can be set to. This one really needs to go in as the fix explains many mysterious problems people may have had with winbindd under heavy load situations (Herb was only able to reproduce this with Swiftest). Jeremy.
Pushed to v3-5-test and v3-6-test. Closing out bug report. Thanks!