They don't produce any window messages and should be processed as soon as possible, without returning to the client side.
-- v2: server: Don't set QS_RAWINPUT for internal hardware messages. win32u: Process internal hardware messages while waiting. win32u: Keep waiting on the queue until it gets signaled. win32u: Use an absolute wait timeout in wait_message. win32u: Check QS_DRIVER bit before calling ProcessEvents.