Introduce the spin_event_timeout() macro, and update the QE library to use it. This version changes 'ret' to a return value of the macro instead of a variable that's passed as a parameter.