devices/e1000/e1000_main-3.0-ethercat.c
branchstable-1.5
changeset 2471 fc64a4b1ec1a
parent 2469 634ba3b1eb95
child 2582 87e502828b3f
equal deleted inserted replaced
2470:4f97d61a8671 2471:fc64a4b1ec1a
  3104 static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
  3104 static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
  3105 {
  3105 {
  3106 	struct e1000_adapter *adapter = netdev_priv(netdev);
  3106 	struct e1000_adapter *adapter = netdev_priv(netdev);
  3107 	struct e1000_tx_ring *tx_ring = adapter->tx_ring;
  3107 	struct e1000_tx_ring *tx_ring = adapter->tx_ring;
  3108 
  3108 
       
  3109 	if (adapter->ecdev) {
       
  3110 		return -EBUSY;
       
  3111 	}
       
  3112 
  3109 	netif_stop_queue(netdev);
  3113 	netif_stop_queue(netdev);
  3110 	/* Herbert's original patch had:
  3114 	/* Herbert's original patch had:
  3111 	 *  smp_mb__after_netif_stop_queue();
  3115 	 *  smp_mb__after_netif_stop_queue();
  3112 	 * but since that doesn't exist yet, just open code it. */
  3116 	 * but since that doesn't exist yet, just open code it. */
  3113 	smp_mb();
  3117 	smp_mb();