diff --git a/include/linux/netpoll.h b/include/linux/netpoll.h index 676f1ff161a9..3ff030367284 100644 --- a/include/linux/netpoll.h +++ b/include/linux/netpoll.h @@ -78,7 +78,7 @@ static inline void *netpoll_poll_lock(struct napi_struct *napi) { struct net_device *dev = napi->dev; - if (dev && dev->npinfo) { + if (dev && rcu_access_pointer(dev->npinfo)) { int owner = smp_processor_id(); while (cmpxchg(&napi->poll_owner, -1, owner) != -1)