Re: INFO: possible recursive locking detected ps2_command

From: Dmitry Torokhov
Date: Thu Sep 03 2009 - 23:23:59 EST


On Fri, Sep 04, 2009 at 12:48:45AM +0200, Zdenek Kabelac wrote:
> 2008/8/8 Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>:
> > 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@xxxxxxxxx> 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.
> >
>
> Well just noticed this issue again in my log - during resume operation
> - thus no external mouse connection in the game this time:
>

External mouse does not have to be connected, the fact that you have
a pass-through serio port is enough to trigger this warning.

--
Dmitry
--
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/