Fix race conditions in signal handling