Use the callout(9) API instead of timeout(9).  To do this more cleanly,
convert a global timer to a per-controller timer.  This works much better
with locking and removes the need for several global lookup tables.

Tested by:	ambrisko


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