| From jejb@kernel.org Tue Sep 2 17:13:12 2008 |
| From: Alexey Dobriyan <adobriyan@gmail.com> |
| Date: Fri, 22 Aug 2008 17:40:10 GMT |
| Subject: USB: cdc-acm: don't unlock acm->mutex on error path |
| To: jejb@kernel.org, stable@kernel.org |
| Message-ID: <200808221740.m7MHeAea013780@hera.kernel.org> |
| |
| From: Alexey Dobriyan <adobriyan@gmail.com> |
| |
| commit 74573ee7096a4ffc2f098108d21c85801b9c7434 upstream |
| |
| On Wed, Jul 23, 2008 at 03:52:36PM +0300, Andrei Popa wrote: |
| > I installed gnokii-0.6.22-r2 and gave the command "gnokii --identify" |
| > and the kernel oopsed: |
| > |
| > BUG: unable to handle kernel NULL pointer dereference at 00000458 |
| > IP: [<c0444b52>] mutex_unlock+0x0/0xb |
| > [<c03830ae>] acm_tty_open+0x4c/0x214 |
| |
| Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> |
| Tested-by: Andrei Popa <andrei.popa@i-neo.ro> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
| |
| --- |
| drivers/usb/class/cdc-acm.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/usb/class/cdc-acm.c |
| +++ b/drivers/usb/class/cdc-acm.c |
| @@ -531,8 +531,8 @@ static int acm_tty_open(struct tty_struc |
| tasklet_schedule(&acm->urb_task); |
| |
| done: |
| -err_out: |
| mutex_unlock(&acm->mutex); |
| +err_out: |
| mutex_unlock(&open_mutex); |
| return rv; |
| |