port->write_urb_busy = 0; 
static int ipw_write(struct usb_serial_port *port, const unsigned char *buf, int count){	struct usb_device *dev = port->serial->dev;	int ret;	dbg("%s: TOP: count=%d, in_interrupt=%ld", __FUNCTION__,		count, in_interrupt() );	if (count == 0) {		dbg("%s - write request of 0 bytes", __FUNCTION__);		return 0;	}		/* Racy and broken, FIXME properly! */	if (port->write_urb->status == -EINPROGRESS)		return 0;	count = min(count, port->bulk_out_size);	memcpy(port->bulk_out_buffer, buf, count);	dbg("%s count now:%d", __FUNCTION__, count);		usb_fill_bulk_urb(port->write_urb, dev,			  usb_sndbulkpipe(dev, port->bulk_out_endpointAddress),			  port->write_urb->transfer_buffer,			  count,			  ipw_write_bulk_callback,			  port);	ret = usb_submit_urb(port->write_urb, GFP_ATOMIC);	if (ret != 0) {		dbg("%s - usb_submit_urb(write bulk) failed with error = %d", __FUNCTION__, ret);		return ret;	}	dbg("%s returning %d", __FUNCTION__, count);	return count;} 
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/507ca9bc0476662f3463888d583864834eab1e11/ipw.c/clean/drivers/usb/serial/ipw.c