devices/e1000/e1000_main-2.6.29-ethercat.c
branchstable-1.5
changeset 2471 fc64a4b1ec1a
parent 2469 634ba3b1eb95
child 2582 87e502828b3f
equal deleted inserted replaced
2470:4f97d61a8671 2471:fc64a4b1ec1a
  3212 static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
  3212 static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
  3213 {
  3213 {
  3214 	struct e1000_adapter *adapter = netdev_priv(netdev);
  3214 	struct e1000_adapter *adapter = netdev_priv(netdev);
  3215 	struct e1000_tx_ring *tx_ring = adapter->tx_ring;
  3215 	struct e1000_tx_ring *tx_ring = adapter->tx_ring;
  3216 
  3216 
       
  3217 	if (adapter->ecdev) {
       
  3218 		return -EBUSY;
       
  3219 	}
       
  3220 
  3217 	netif_stop_queue(netdev);
  3221 	netif_stop_queue(netdev);
  3218 	/* Herbert's original patch had:
  3222 	/* Herbert's original patch had:
  3219 	 *  smp_mb__after_netif_stop_queue();
  3223 	 *  smp_mb__after_netif_stop_queue();
  3220 	 * but since that doesn't exist yet, just open code it. */
  3224 	 * but since that doesn't exist yet, just open code it. */
  3221 	smp_mb();
  3225 	smp_mb();