Re: INFO: possible recursive locking detected ps2_command
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2008-08-01 03:04:58
Also in:
lkml
On Thu, Jul 31, 2008 at 02:57:39PM -0700, Andrew Morton wrote:
(cc linux-input) On Thu, 31 Jul 2008 11:41:25 +0200 "Zdenek Kabelac" [off-list ref] wrote:quoted
Hi During mouse unplugging from psaux connector from the laptops' docking station I've got attached INFO trace. (laptops still has synaptics device)
Dell?
quoted
Also for unknown reason to me psaux mouse & synaptic device do not work somehow together - is it hw limitation of /dev/input/mice interface? (USB mouse and synaptics do work quite well together) [ INFO: possible recursive locking detected ] 2.6.27-rc1 #48(it's 2.6.27-rc1)
Peter, here is the trace we talked about long time ago. For some reason lockdep annotation only works once. If reconnect is forced or psmouse module is reloaded lockdep starts complaining about passthrough port.
quoted
--------------------------------------------- kseriod/166 is trying to acquire lock: (&ps2dev->cmd_mutex){--..}, at: [<ffffffff8126e9ae>] ps2_command+0x5e/0x460 but task is already holding lock: (&ps2dev->cmd_mutex){--..}, at: [<ffffffff8126e9ae>] ps2_command+0x5e/0x460 other info that might help us debug this: 4 locks held by kseriod/166: #0: (serio_mutex){--..}, at: [<ffffffff8126cc1e>] serio_thread+0x3e/0x410 #1: (&serio->drv_mutex){--..}, at: [<ffffffff8126bf8b>] serio_connect_driver+0x2b/0x50 #2: (psmouse_mutex){--..}, at: [<ffffffffa009aa00>] psmouse_connect+0x30/0x2c0 [psmouse] #3: (&ps2dev->cmd_mutex){--..}, at: [<ffffffff8126e9ae>] ps2_command+0x5e/0x460 stack backtrace: Pid: 166, comm: kseriod Not tainted 2.6.27-rc1 #48 Call Trace: [<ffffffff81068bda>] __lock_acquire+0xcea/0x13b0 [<ffffffff81066401>] ? trace_hardirqs_off_caller+0x21/0xc0 [<ffffffff810664ad>] ? trace_hardirqs_off+0xd/0x10 [<ffffffff8126e9ae>] ? ps2_command+0x5e/0x460 [<ffffffff81069336>] lock_acquire+0x96/0xe0 [<ffffffff8126e9ae>] ? ps2_command+0x5e/0x460 [<ffffffff81313861>] mutex_lock_nested+0xc1/0x340 [<ffffffff8126e9ae>] ? ps2_command+0x5e/0x460 [<ffffffff810135a0>] ? native_sched_clock+0x90/0xb0 [<ffffffff8126e9ae>] ps2_command+0x5e/0x460 [<ffffffff81066401>] ? trace_hardirqs_off_caller+0x21/0xc0 [<ffffffff81065834>] ? get_lock_stats+0x34/0x70 [<ffffffffa009977d>] psmouse_sliced_command+0x2d/0x90 [psmouse] [<ffffffff8126e838>] ? ps2_sendbyte+0x48/0x130 [<ffffffffa009b8f7>] synaptics_pt_write+0x27/0x60 [psmouse] [<ffffffff81315acd>] ? _spin_unlock_irq+0x3d/0x80 [<ffffffff8126e84d>] ps2_sendbyte+0x5d/0x130 [<ffffffff81319840>] ? sub_preempt_count+0x80/0x120 [<ffffffff8126ea4d>] ps2_command+0xfd/0x460 [<ffffffff81319840>] ? sub_preempt_count+0x80/0x120 [<ffffffff81315acd>] ? _spin_unlock_irq+0x3d/0x80 [<ffffffffa0099917>] psmouse_probe+0x27/0xa0 [psmouse] [<ffffffff8126c1e1>] ? serio_open+0x11/0x50 [<ffffffffa009ab48>] psmouse_connect+0x178/0x2c0 [psmouse] [<ffffffff8126bf96>] serio_connect_driver+0x36/0x50 [<ffffffff8126bfcb>] serio_driver_probe+0x1b/0x20 [<ffffffff81221112>] driver_probe_device+0xa2/0x1e0 [<ffffffff812212e0>] ? __device_attach+0x0/0x10 [<ffffffff812212e9>] __device_attach+0x9/0x10 [<ffffffff8122050b>] bus_for_each_drv+0x6b/0xa0 [<ffffffff812213b8>] device_attach+0x88/0x90 [<ffffffff812202d5>] bus_attach_device+0x55/0x80 [<ffffffff8121ee99>] device_add+0x4f9/0x610 [<ffffffff81319840>] ? sub_preempt_count+0x80/0x120 [<ffffffff8126ce1c>] serio_thread+0x23c/0x410 [<ffffffff810571a0>] ? autoremove_wake_function+0x0/0x40 [<ffffffff8126cbe0>] ? serio_thread+0x0/0x410 [<ffffffff81056de9>] kthread+0x49/0x90 [<ffffffff8100d669>] child_rip+0xa/0x11 [<ffffffff8103b757>] ? finish_task_switch+0x57/0x110 [<ffffffff81315acd>] ? _spin_unlock_irq+0x3d/0x80 [<ffffffff8100cc73>] ? restore_args+0x0/0x30 [<ffffffff810664ad>] ? trace_hardirqs_off+0xd/0x10 [<ffffffff81056da0>] ? kthread+0x0/0x90 [<ffffffff8100d65f>] ? child_rip+0x0/0x11-- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
-- Dmitry