spin_unlock(&tp->tx_lock); spin_unlock_irq(&tp->lock); 
 tg3_full_unlock(tp); 
static int tg3_set_pauseparam(struct net_device *dev, struct ethtool_pauseparam *epause){	struct tg3 *tp = netdev_priv(dev);  	if (netif_running(dev))		tg3_netif_stop(tp);	spin_lock_irq(&tp->lock);	spin_lock(&tp->tx_lock);	if (epause->autoneg)		tp->tg3_flags |= TG3_FLAG_PAUSE_AUTONEG;	else		tp->tg3_flags &= ~TG3_FLAG_PAUSE_AUTONEG;	if (epause->rx_pause)		tp->tg3_flags |= TG3_FLAG_RX_PAUSE;	else		tp->tg3_flags &= ~TG3_FLAG_RX_PAUSE;	if (epause->tx_pause)		tp->tg3_flags |= TG3_FLAG_TX_PAUSE;	else		tp->tg3_flags &= ~TG3_FLAG_TX_PAUSE;	if (netif_running(dev)) {		tg3_halt(tp, RESET_KIND_SHUTDOWN, 1);		tg3_init_hw(tp);		tg3_netif_start(tp);	}	spin_unlock(&tp->tx_lock);	spin_unlock_irq(&tp->lock);  	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/f47c11eeccc8820010992eb32dbe7370a08f8bd3/tg3.c/buggy/drivers/net/tg3.c