I agree with Jonathan Blow, everything should go through userland/userspace. Even the graphics stack. I can’t tell you how many times my workstation would freeze due to a weird USB driver implementation.
A lot of applications don’t handle the DEVICE_RESET event, though, so you’re likely to see them crash if the driver resets. Firefox used to have a bug where video playback stopped working after a driver reset, but that’s been fixed.
(this was while developing a router, so the under development network driver process crashing was a frequent situation)