Re: 2.6.18-git21, possible recursive locking in kseriod ends up in DWARF2 unwinder stuck

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2006-10-05 at 16:34 -0400, Dmitry Torokhov wrote:
> On 10/4/06, Jiri Kosina <[email protected]> wrote:
> > On Wed, 4 Oct 2006, Alessandro Suardi wrote:
> >
> > > Non-fatal (box is still alive and apparently well) on boot,
> > > FC5-uptodate on a Dell Latitude C640. From the dmesg ring:
> >
> > > [    8.680000] =============================================
> > > [    8.680000] [ INFO: possible recursive locking detected ]
> > > [    8.680000] 2.6.18-git21 #1
> > > [    8.680000] ---------------------------------------------
> > > [    8.680000] kseriod/163 is trying to acquire lock:
> > > [    8.680000]  (&ps2dev->cmd_mutex/1){--..}, at: [<c03198c3>]
> > > ps2_command+0x89/0x358
> >
> > Me and Peter Zijlstra have already submitted patches to fix this - read
> > the thread at
> > http://linux.derkeiler.com/Mailing-Lists/Kernel/2006-09/msg07416.html
> >
> > I don't know the reason why these have not yet been merged into the input
> > tree. Dmitry?
> >
> 
> Sorry, was a little busy.
> 
> I tested the patches and they work. Couple of comments:
> 
> - register_lock_class is marked as inline but now has 2 call sites and
> is relatively big - might want to remove "inline"
> - how about adding lockdep_set_subclass() to avoid littering source
> with struct lock_class_key when we only want to tweak subclass? For
> that we might want export register_lock_class and hide it behind a
> #define...
> 

or something like this:

#define concat_i(a)	#a
#define concat(a,b)	concat_i(a ## b)

#define lockdep_set_subclass(lock, subclass) \
  ({ static struct lock_key_class __key; \
     lockdep_init_map(&(lock)->dep_map, concat(lock, subclass), \
                      &__key, subclass); })

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux