spin_unlock(&tp->tx_lock); spin_unlock_irq(&tp->lock); 
tg3_full_unlock(tp); 
static void tg3_reset_task(void *_data){	struct tg3 *tp = _data;	unsigned int restart_timer;	tg3_netif_stop(tp);	spin_lock_irq(&tp->lock);	spin_lock(&tp->tx_lock);	restart_timer = tp->tg3_flags2 & TG3_FLG2_RESTART_TIMER;	tp->tg3_flags2 &= ~TG3_FLG2_RESTART_TIMER;	tg3_halt(tp, RESET_KIND_SHUTDOWN, 0);	tg3_init_hw(tp);	tg3_netif_start(tp);	spin_unlock(&tp->tx_lock);	spin_unlock_irq(&tp->lock);	if (restart_timer)		mod_timer(&tp->timer, jiffies + 1);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/f47c11eeccc8820010992eb32dbe7370a08f8bd3/tg3.c/buggy/drivers/net/tg3.c