lkml.org 
[lkml]   [2008]   [Aug]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: INFO: possible recursive locking detected ps2_command
On Fri, Aug 08, 2008 at 12:49:49PM +0200, Peter Zijlstra wrote:
> On Thu, 2008-07-31 at 23:04 -0400, Dmitry Torokhov wrote:
> > 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" <zdenek.kabelac@gmail.com> wrote:
> > >
> > > > Hi
> > > >
> > > > During mouse unplugging from psaux connector from the laptops' docking
> > > > station I've got attached INFO trace.
> > > > (laptops still has synaptics device)
> > > >
> >
> > Dell?
> >
> > > > 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.
>
> Bit puzzling - and I don't have any ps2 hardware around to test with
> (nor do I normally use modules - but that is fixable of course).
>
> Does Rabin's patch help?
>
> http://lkml.org/lkml/2008/8/7/329
>

I doubt it resolves problem fully because it only takes care of module
unload. I can easily trip lockdep by reconnecting the device. Just to
give some more details about the problem:

- synaptics touchpads have a pass-through port that allows to connect
either external mouse or maybe a trackpoint device. Both devices
are represented by 'serio' structures and are handled by the same
driver (psmouse).

- as far as I know we have proper locking there and lockdep
annotatinos were added to lockdep to reflect the nesting of the
serio ports.

- if child port (pass-through port) is destroyed and recreated (due
to module unload, or because user requested reconnect through sysfs
or system-initiated reconnect) lockdep starts complaining although
the new child port should still have the same "depth" as the old
one.

Thanks!

--
Dmitry


\
 
 \ /
  Last update: 2008-08-08 14:47    [W:0.140 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site