static void sx_unthrottle(struct tty_struct * tty){	struct specialix_port *port = (struct specialix_port *)tty->driver_data;	struct specialix_board *bp;	unsigned long flags;	func_enter();					if (sx_paranoia_check(port, tty->name, "sx_unthrottle")) {		func_exit();		return;	}		bp = port_Board(port);		spin_lock_irqsave(&port->lock, flags);	/* XXXX Use DTR INSTEAD???? */	if (SX_CRTSCTS(tty)) {		port->MSVR |= MSVR_DTR;	} /* Else clause: see remark in "sx_throttle"... */	spin_lock_irqsave(&bp->lock, flags);	sx_out(bp, CD186x_CAR, port_No(port));	spin_unlock_irqrestore(&bp->lock, flags);	if (I_IXOFF(tty)) {		spin_unlock_irqrestore(&port->lock, flags);		sx_wait_CCR(bp);		spin_lock_irqsave(&bp->lock, flags);		sx_out(bp, CD186x_CCR, CCR_SSCH1);		spin_unlock_irqrestore(&bp->lock, flags);		sx_wait_CCR(bp);		spin_lock_irqsave(&port->lock, flags);	}	spin_lock_irqsave(&bp->lock, flags);	sx_out(bp, CD186x_MSVR, port->MSVR);	spin_unlock_irqrestore(&bp->lock, flags);	spin_unlock_irqrestore(&port->lock, flags);	func_exit();}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/d61780c0d384939ef31c46b47442854d5def4623/specialix.c/buggy/drivers/char/specialix.c