Convert the callouts back to using mutexes.

I did this wrong - I should've included a state flag for each callout
to see if it was supposed to run or not.  I didn't do that.
Instead, just use mutexes anyway.

Suggested by: jhb


git-svn-id: svn+ssh://svn.freebsd.org/base/head@274535 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f