We use a configuration automation framework to spin off winbindd children with auto-generated configuration files and command-line arguments. If we simulate 'kill -s SIGSEGV' to winbindd, the winbindd!corepath is default compilation value which is invalid. This causes dump_core() to fail to generate a core file, plus it subsequently invokes exit(1) so it looks like a normal error exit to the parent process. The parent monitoring process will automatically respin winbindd if it thinks it exited normally with status 0 (EXIT_SUCCESS) or from a signal, but non-zero status exits are considered fatal to avoid infinite fork loops due to bad configurations.
I did a little test moving core_dump_setup() in main() down past the configuration parsing and log setup, and everything works as expected.
Looking at the git history, this appears to be very old and not specific to 3.5.11; I'm merely reporting from the version we're using.