struct usb_serial_port *port = (struct usb_serial_port *) tty->driver_data; 
struct usb_serial_port *port = tty->driver_data; 
static void serial_close(struct tty_struct *tty, struct file * filp){	struct usb_serial_port *port = (struct usb_serial_port *) tty->driver_data;	if (!port)		return;	dbg("%s - port %d", __FUNCTION__, port->number);	if (port->open_count == 0)		return;	--port->open_count;	if (port->open_count == 0) {		/* only call the device specific close if this 		 * port is being closed by the last owner */		port->serial->type->close(port, filp);		if (port->tty) {			if (port->tty->driver_data)				port->tty->driver_data = NULL;			port->tty = NULL;		}		module_put(port->serial->type->owner);	}	kref_put(&port->serial->kref, destroy_serial);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/81671ddb7e24e9d1f84812dba8ed810935f77d40/usb-serial.c/buggy/drivers/usb/serial/usb-serial.c