try (mdc800->irq_urb_buffer=kmalloc (8, GFP_KERNEL)); try (mdc800->write_urb_buffer=kmalloc (8, GFP_KERNEL)); try (mdc800->download_urb_buffer=kmalloc (64, GFP_KERNEL)); 
mdc800->irq_urb_buffer=kmalloc (8, GFP_KERNEL); if (!mdc800->irq_urb_buffer) goto cleanup_on_fail; mdc800->write_urb_buffer=kmalloc (8, GFP_KERNEL); if (!mdc800->write_urb_buffer) goto cleanup_on_fail; mdc800->download_urb_buffer=kmalloc (64, GFP_KERNEL); if (!mdc800->download_urb_buffer) goto cleanup_on_fail; 
static int __init usb_mdc800_init (void){	int retval = -ENODEV;	/* Allocate Memory */	try (mdc800=kmalloc (sizeof (struct mdc800_data), GFP_KERNEL));	memset(mdc800, 0, sizeof(struct mdc800_data));	mdc800->dev = NULL;	mdc800->open=0;	mdc800->state=NOT_CONNECTED;	init_MUTEX (&mdc800->io_lock);	init_waitqueue_head (&mdc800->irq_wait);	init_waitqueue_head (&mdc800->write_wait);	init_waitqueue_head (&mdc800->download_wait);	mdc800->irq_woken = 0;	mdc800->downloaded = 0;	mdc800->written = 0;	try (mdc800->irq_urb_buffer=kmalloc (8, GFP_KERNEL));	try (mdc800->write_urb_buffer=kmalloc (8, GFP_KERNEL));	try (mdc800->download_urb_buffer=kmalloc (64, GFP_KERNEL));	try (mdc800->irq_urb=usb_alloc_urb (0, GFP_KERNEL));	try (mdc800->download_urb=usb_alloc_urb (0, GFP_KERNEL));	try (mdc800->write_urb=usb_alloc_urb (0, GFP_KERNEL));	/* Register the driver */	retval = usb_register(&mdc800_usb_driver);	if (retval)		goto cleanup_on_fail;	info (DRIVER_VERSION ":" DRIVER_DESC);	return 0;	/* Clean driver up, when something fails */cleanup_on_fail:	if (mdc800 != NULL)	{		err ("can't alloc memory!");		kfree(mdc800->download_urb_buffer);		kfree(mdc800->write_urb_buffer);		kfree(mdc800->irq_urb_buffer);		usb_free_urb(mdc800->write_urb);		usb_free_urb(mdc800->download_urb);		usb_free_urb(mdc800->irq_urb);		kfree (mdc800);	}	mdc800 = NULL;	return retval;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/72129cd6577793408ff546b0ddd5794c33f32399/mdc800.c/buggy/drivers/usb/image/mdc800.c