Jakub Kicinski <kuba@xxxxxxxxxx> : > I don't see any reason why napi_enable() needs to be under the lock, > only reason I could think of is if the IRQ also took this lock > but it doesn't. napi_enable() will soon need to sleep. Anything that depends on the napi handler being run may also behave differently because of 'priv->resetting = false;' and 'priv->closing = false;' also done under the lock after napi_enable in the original version. Both priv->closing and priv->resetting are always accessed with lock held so it's fine. (nothing to chew in grcan_start either) Reviewed-by: Francois Romieu <romieu@xxxxxxxxxxxxx> -- Ueimor