devices/e1000/e1000_main-2.6.20-ethercat.c
branchstable-1.5
changeset 2471 fc64a4b1ec1a
parent 2421 bc2d4bf9cbe5
child 2582 87e502828b3f
equal deleted inserted replaced
2470:4f97d61a8671 2471:fc64a4b1ec1a
  3298 static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
  3298 static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
  3299 {
  3299 {
  3300 	struct e1000_adapter *adapter = netdev_priv(netdev);
  3300 	struct e1000_adapter *adapter = netdev_priv(netdev);
  3301 	struct e1000_tx_ring *tx_ring = adapter->tx_ring;
  3301 	struct e1000_tx_ring *tx_ring = adapter->tx_ring;
  3302 
  3302 
       
  3303 	if (adapter->ecdev) {
       
  3304 		return -EBUSY;
       
  3305 	}
       
  3306 
  3303 	netif_stop_queue(netdev);
  3307 	netif_stop_queue(netdev);
  3304 	/* Herbert's original patch had:
  3308 	/* Herbert's original patch had:
  3305 	 *  smp_mb__after_netif_stop_queue();
  3309 	 *  smp_mb__after_netif_stop_queue();
  3306 	 * but since that doesn't exist yet, just open code it. */
  3310 	 * but since that doesn't exist yet, just open code it. */
  3307 	smp_mb();
  3311 	smp_mb();