Loading include/linux/netdevice.h +18 −0 Original line number Diff line number Diff line Loading @@ -407,6 +407,24 @@ static inline void napi_enable(struct napi_struct *n) clear_bit(NAPI_STATE_SCHED, &n->state); } #ifdef CONFIG_SMP /** * napi_synchronize - wait until NAPI is not running * @n: napi context * * Wait until NAPI is done being scheduled on this context. * Waits till any outstanding processing completes but * does not disable future activations. */ static inline void napi_synchronize(const struct napi_struct *n) { while (test_bit(NAPI_STATE_SCHED, &n->state)) msleep(1); } #else # define napi_synchronize(n) barrier() #endif /* * The DEVICE structure. * Actually, this whole structure is a big mistake. It mixes I/O Loading Loading
include/linux/netdevice.h +18 −0 Original line number Diff line number Diff line Loading @@ -407,6 +407,24 @@ static inline void napi_enable(struct napi_struct *n) clear_bit(NAPI_STATE_SCHED, &n->state); } #ifdef CONFIG_SMP /** * napi_synchronize - wait until NAPI is not running * @n: napi context * * Wait until NAPI is done being scheduled on this context. * Waits till any outstanding processing completes but * does not disable future activations. */ static inline void napi_synchronize(const struct napi_struct *n) { while (test_bit(NAPI_STATE_SCHED, &n->state)) msleep(1); } #else # define napi_synchronize(n) barrier() #endif /* * The DEVICE structure. * Actually, this whole structure is a big mistake. It mixes I/O Loading