Prevent deadlock on pthread_exit().
This patch fixes a deadlock issues I ran into. In a nutshell, the main thread sends a signal to the report_thread. This can lead to a deadlock: report_thread acquires sb_histogram_t->lock, gets killed, later on the main thread calls report_cumulative() which will block indefinitely trying to acquire the lock again.
I can replicate the deadlock reliably in my environment with a version of sysbench compiled from source (say 8 out of 10 runs will deadlock). The system version (Ubuntu) of sysbench seems to lock up much less frequently. In any case, the issue remains that deadlock are possible given the right sequence of events.
Instead of killing the thread forcefully, this patch uses a variable to signal when the report thread shall break out of its reporting loop. This ensures that the report thread will properly release its locks.