if (write_urbs[j]->transfer_buffer) kfree(write_urbs[j]->transfer_buffer); 
kfree(write_urbs[j]->transfer_buffer); 
static void klsi_105_shutdown (struct usb_serial *serial){	int i;		dbg("%s", __FUNCTION__);	/* stop reads and writes on all ports */	for (i=0; i < serial->num_ports; ++i) {		struct klsi_105_private *priv = usb_get_serial_port_data(serial->port[i]);		unsigned long flags;		if (priv) {			/* kill our write urb pool */			int j;			struct urb **write_urbs = priv->write_urb_pool;			spin_lock_irqsave(&priv->lock,flags);			for (j = 0; j < NUM_URBS; j++) {				if (write_urbs[j]) {					/* FIXME - uncomment the following					 * usb_kill_urb call when the host					 * controllers get fixed to set					 * urb->dev = NULL after the urb is					 * finished.  Otherwise this call					 * oopses. */					/* usb_kill_urb(write_urbs[j]); */					if (write_urbs[j]->transfer_buffer)						    kfree(write_urbs[j]->transfer_buffer);					usb_free_urb (write_urbs[j]);				}			}			spin_unlock_irqrestore (&priv->lock, flags);			kfree(priv);			usb_set_serial_port_data(serial->port[i], NULL);		}	}} /* klsi_105_shutdown */
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/1bc3c9e1e44c2059fe2ffa6ff70ad0a925d7b05f/kl5kusb105.c/clean/drivers/usb/serial/kl5kusb105.c