Browse Source

[NET]: Add memory barrrier to netif_poll_enable()

When a driver writer calls this, they generally expect that
all previous stores and modifications they've made will be
visible before netif_poll_enable() executes, so ensure this.

Noticed by Ben H.

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 18 năm trước cách đây
mục cha
commit
e44c39bd84
1 tập tin đã thay đổi với 1 bổ sung0 xóa
  1. 1 0
      include/linux/netdevice.h

+ 1 - 0
include/linux/netdevice.h

@@ -906,6 +906,7 @@ static inline void netif_poll_disable(struct net_device *dev)
 
 static inline void netif_poll_enable(struct net_device *dev)
 {
+	smp_mb__before_clear_bit();
 	clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
 }