should drivers avoid the use of in_atomic()?