Re: [PATCH] cdc-acm: fix resource reclaim in error path of acm_probe

From: Axel Lin
Date: Sat May 29 2010 - 05:16:15 EST


2010/5/28 Oliver Neukum <oneukum@xxxxxxx>:
> Am Freitag, 28. Mai 2010 05:28:31 schrieb Axel Lin:
>> This patch fixes resource reclaim in error path of acm_probe:
>> 1. In the case of "out of memory (write urbs usb_alloc_urb)",
>> usb_alloc_urb may fail in any iteration of the for loop.
>> Current implementation does not properly free allocated snd->urb.
>
> Yes.
>
>> 2. In the case of device_create_file(&intf->dev,&dev_attr_iCountryCodeRelDate)
>> fail, acm->country_codes is kfreed. As a result, device_remove_file for
>> dev_attr_wCountryCodes will not be executed in acm_disconnect.
>
> Yes.
>
>> 3. This patch also improves the error handling by only reclaim successfully
>> allocated resources instead of iterate over all entries in the for loop.
>
> Please don't do that. Simplicity and correctness are the only goals designing
> error handling.

OK. I will send a revised version for bug fixes only.
Thanks for the review.

Axel

>
>        Regards
>                Oliver
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/