From: Oliver Neukum <oliver@neukum.org>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Petr Vandrovec <petr@vmware.com>,
Jeff Chua <jeff.chua.linux@gmail.com>,
Jeff Chua <jeff.tw.chua@gmail.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Linux Kernel <linux-kernel@vger.kernel.org>,
"Greg Kroah-Hartman" <gregkh@suse.de>,
Frederic Weisbecker <fweisbec@gmail.com>
Subject: Re: commit 554f76962d3a6eb5110415f1591aca83f96a84ae hangs USB for vmware 7.0.1
Date: Sat, 6 Mar 2010 12:12:51 +0100 [thread overview]
Message-ID: <201003061212.51110.oliver@neukum.org> (raw)
In-Reply-To: <20100306093306.GA27247@core.coreip.homeip.net>
Am Samstag, 6. März 2010 10:33:07 schrieb Dmitry Torokhov:
> I did not have issues with bringing VMware GUI with
> 64096c17417380d8a472d096645f4cbc9406c987 as tip of Linus's tree (which
> is a believe the latest published), but got the following traces when
> yanked USB keyboard out:
>
> [ 1784.954389] usb 5-1: USB disconnect, address 2
> [ 1784.954394] usb 5-1.3: USB disconnect, address 3
> [ 1920.558046] INFO: task khubd:27 blocked for more than 120 seconds.
> [ 1920.558051] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> [ 1920.558054] khubd D 0000000000000202 0 27 2 0x00000000
> [ 1920.558060] ffff88011ba29960 0000000000000046 ffff88000260eec0 ffff88011ba20000
> [ 1920.558067] ffff88011ba28000 ffff88011ba29fd8 ffff88011ba29fd8 ffff88011ba20000
> [ 1920.558073] ffff88011ba29fd8 0000000000013d80 0000000000013d80 0000000000013d80
> [ 1920.558079] Call Trace:
> [ 1920.558088] [<ffffffff81478591>] __mutex_lock_common+0x1a1/0x4a0
> [ 1920.558094] [<ffffffff8136f922>] ? usbfs_conn_disc_event+0x12/0x40
> [ 1920.558099] [<ffffffff8107eb7d>] ? trace_hardirqs_on+0xd/0x10
> [ 1920.558103] [<ffffffff8136f922>] ? usbfs_conn_disc_event+0x12/0x40
> [ 1920.558107] [<ffffffff8147896e>] mutex_lock_nested+0x3e/0x50
> [ 1920.558111] [<ffffffff8136f922>] usbfs_conn_disc_event+0x12/0x40
> [ 1920.558115] [<ffffffff81371184>] usbfs_notify+0xa4/0x240
Thanks, seems like a lock is taken twice.
Dmitry, can you test this patch, too?
Regards
Oliver
>From e58722a5fc0c00bceaea1f70d5024f6325ac3a6c Mon Sep 17 00:00:00 2001
From: Oliver Neukum <oliver@neukum.org>
Date: Sat, 6 Mar 2010 12:09:41 +0100
Subject: [PATCH] usb: usbfs: Fix deadlock of khubd
The caller of usbfs_conn_disc_event() already holds usbfs_mutex.
Don't take it again.
Signed-off-by: Oliver Neukum <neukum@b1-systems.de>
---
drivers/usb/core/devices.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/core/devices.c b/drivers/usb/core/devices.c
index c83c975..08def6b 100644
--- a/drivers/usb/core/devices.c
+++ b/drivers/usb/core/devices.c
@@ -155,11 +155,10 @@ static const struct class_info clas_info[] =
/*****************************************************************/
+/* the caller holds usbfs_mutex */
void usbfs_conn_disc_event(void)
{
- mutex_lock(&usbfs_mutex);
conndiscevcnt++;
- mutex_unlock(&usbfs_mutex);
wake_up(&deviceconndiscwq);
}
--
1.6.4.2
next prev parent reply other threads:[~2010-03-06 11:13 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-05 22:18 commit 554f76962d3a6eb5110415f1591aca83f96a84ae hangs USB for vmware 7.0.1 Jeff Chua
2010-03-05 22:40 ` Linus Torvalds
2010-03-06 3:45 ` Petr Vandrovec
[not found] ` <b6a2187b1003052129l7703dee6s6e820b8ca18b9e2d@mail.gmail.com>
2010-03-06 6:46 ` Petr Vandrovec
2010-03-06 9:33 ` Dmitry Torokhov
2010-03-06 11:12 ` Oliver Neukum [this message]
2010-03-06 18:48 ` Heinz Diehl
[not found] ` <b6a2187b1003052122w105851abhd54a32f77aef22c4@mail.gmail.com>
2010-03-06 9:03 ` Oliver Neukum
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201003061212.51110.oliver@neukum.org \
--to=oliver@neukum.org \
--cc=dmitry.torokhov@gmail.com \
--cc=fweisbec@gmail.com \
--cc=gregkh@suse.de \
--cc=jeff.chua.linux@gmail.com \
--cc=jeff.tw.chua@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=petr@vmware.com \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.