All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Jiri Kosina <jkosina@suse.cz>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	linux-kernel@vger.kernel.org
Subject: Re: [GIT] HID
Date: Wed, 15 May 2013 11:10:21 +0200	[thread overview]
Message-ID: <20130515091020.GA6819@gmail.com> (raw)
In-Reply-To: <alpine.LNX.2.00.1305142319310.17873@pobox.suse.cz>


* Jiri Kosina <jkosina@suse.cz> wrote:

> On Tue, 14 May 2013, Ingo Molnar wrote:
> 
> > > > FYI, there's a new HID related lockdep and RCU splat upstream, probably 
> > > > relatd to the debugfs locking fixes:
> > > > 
> > > > [   79.088631] ======================================================
> > > > [   79.088631] [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ]
> > > > [   79.088631] 3.9.0-13694-g7cf229a-dirty #224212 Tainted: G        W   
> > > > [   79.088631] ------------------------------------------------------
> > > > [   79.088631] swapper/0/1 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
> > > > [   79.088631]  (&hdev->debug_list_lock){+.+...}, at: [<ffffffff82e510d9>] hid_debug_event+0x2e/0xd0
> > > > [   79.088631] 
> > > > 
> > > > See the full bootlog below. It's from an allyesconfig x86-64 bootup log.
> > > 
> > > Hi Ingo,
> > > 
> > > thanks for the report. I have a fix for this in my tree already and am 
> > > going to send pull request to Linus shortly.
> > 
> > FYI, the fixes in your tree apparently did not fix the bug - I'm still 
> > getting the same lockdep splat below.
> 
> Hi Ingo,
> 
> which Linus' git tree topmost commit is that? The lockdep splat seems 
> highly suspicious to me, because:
> 
> [ ... snip ... ]
> > and this task is already holding:
> >  (&(&usbhid->lock)->rlock){-.....}, at: [<c1bc08e4>] usb_hidinput_input_event+0x7c/0xaf
> > which would create a new lock dependency:
> >  (&(&usbhid->lock)->rlock){-.....} -> (&hdev->debug_list_lock){+.+...}
> > 
> > but this new dependency connects a HARDIRQ-irq-safe lock:
> >  (&(&usbhid->lock)->rlock){-.....}
> > ... which became HARDIRQ-irq-safe at:
> >   [<c106974e>] __lock_acquire+0x241/0xd54
> >   [<c106a662>] lock_acquire+0x76/0x8a
> >   [<c1dbe21a>] _raw_spin_lock+0x3d/0x4a
> >   [<c1bc0764>] hid_ctrl+0x28/0x12c
> >   [<c19bfcec>] usb_hcd_giveback_urb+0x40/0x84
> >   [<c19e15cc>] finish_urb+0xbe/0xf4
> >   [<c19e163b>] takeback_td+0x39/0x99
> >   [<c19e1850>] dl_done_list+0x1b5/0x1e4
> >   [<c19e28a1>] ohci_irq+0x16c/0x27a
> >   [<c19bf46d>] usb_hcd_irq+0x26/0x4f
> >   [<c1088cc2>] handle_irq_event_percpu+0x24/0x11f
> >   [<c1088de9>] handle_irq_event+0x2c/0x43
> >   [<c108ad05>] handle_fasteoi_irq+0x6a/0x97
> > 
> > to a HARDIRQ-irq-unsafe lock:
> >  (&hdev->debug_list_lock){+.+...}
> > ... which became HARDIRQ-irq-unsafe at:
> > ...  [<c10697b1>] __lock_acquire+0x2a4/0xd54
> >   [<c106a662>] lock_acquire+0x76/0x8a
> >   [<c1dbc602>] __mutex_lock_common+0x4f/0x36f
> >   [<c1dbc960>] mutex_lock_nested+0x3e/0x44
> >   [<c1ba316b>] hid_debug_event+0x1e/0xa8
> 
> .. this is odd. In current Linus' tree we have
> 
> 	spin_lock_irqsave(&hdev->debug_list_lock, flags);
> 
> in hid_debug_event(), as commit 1deb9d341d turned debug_list_lock from 
> mutex to spinlock, but the trace implies that your kernel is trying to 
> acquire mutex.
> 
> Could you please check that you are running kernel which contains 
> 1deb9d341d? 
> 
> 	$ git describe --contains 1deb9d341d475
> 	v3.10-rc1~13^2
> 
> On Linus' tree.

Indeed, you are right, I was running a few days old kernel on that box. 
Sorry about the noise!

Thanks,

	Ingo

  reply	other threads:[~2013-05-15  9:10 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-30  8:32 [GIT] HID Jiri Kosina
2013-05-10 11:47 ` Ingo Molnar
2013-05-10 11:49   ` Jiri Kosina
2013-05-10 11:52     ` Ingo Molnar
2013-05-14 18:31     ` Ingo Molnar
2013-05-14 21:23       ` Jiri Kosina
2013-05-15  9:10         ` Ingo Molnar [this message]
  -- strict thread matches above, loose matches on Subject: below --
2014-04-02 14:19 Jiri Kosina
2014-03-17  9:31 Jiri Kosina
2014-02-18 10:30 Jiri Kosina
2013-12-13 14:12 Jiri Kosina
2013-11-27 14:53 Jiri Kosina
2013-11-15 23:22 Jiri Kosina
2013-10-21 13:40 Jiri Kosina
2013-10-07 15:51 Jiri Kosina
2013-08-09 13:24 Jiri Kosina
2013-07-31 22:54 Jiri Kosina
2013-07-04 13:27 Jiri Kosina
2013-06-12 22:22 Jiri Kosina
2013-05-10 15:17 Jiri Kosina
2013-04-04  9:06 Jiri Kosina
2013-03-27 17:04 Jiri Kosina
2013-03-08 10:34 Jiri Kosina
2013-02-21 10:14 Jiri Kosina
2013-01-31 21:42 Jiri Kosina
2012-12-12 21:53 Jiri Kosina
2012-11-16 15:43 Jiri Kosina
2012-11-08 13:01 Jiri Kosina
2012-10-31 14:50 Jiri Kosina
2012-10-01 13:16 Jiri Kosina
2012-09-22  9:41 Jiri Kosina
2012-09-07 15:16 Jiri Kosina
2012-08-23 10:10 Jiri Kosina
2012-07-24 12:01 Jiri Kosina
2012-07-19 13:34 Jiri Kosina
2012-06-26 10:08 Jiri Kosina
2012-05-22  9:49 Jiri Kosina
2012-04-20  9:53 Jiri Kosina
2012-03-20 22:55 Jiri Kosina
2012-03-05 13:40 Jiri Kosina
2012-02-06 15:29 Jiri Kosina
2012-01-05 21:39 Jiri Kosina
2012-01-08  5:56 ` Jeremy Fitzhardinge
2012-01-08 12:29 ` Jeremy Fitzhardinge
2012-01-08 16:45   ` Jiri Kosina
2012-01-14  7:45     ` Jeremy Fitzhardinge
2012-02-01 11:48       ` Jiri Kosina
2012-02-01 17:10         ` Jeremy Fitzhardinge
2012-02-03 22:56   ` Jiri Kosina
2011-12-02 16:03 Jiri Kosina
2011-11-03 10:49 Jiri Kosina
2011-10-25  9:23 Jiri Kosina
2011-09-07 22:31 Jiri Kosina
2011-08-24 18:10 Jiri Kosina
2011-07-22 21:05 Jiri Kosina
2011-06-27 13:41 Jiri Kosina
2011-06-17 15:36 Jiri Kosina
2011-05-23 12:33 Jiri Kosina
2011-04-06 21:36 Jiri Kosina
2011-03-18 13:24 Jiri Kosina
2011-01-08 15:29 Jiri Kosina
2011-01-12  8:49 ` Jiri Kosina
2010-12-03  1:24 Jiri Kosina
2010-12-03  1:56 ` Linus Torvalds
2010-10-23 21:39 Jiri Kosina
2010-10-23 23:09 ` Jarod Wilson
2010-10-24  6:19   ` Jiri Kosina
2010-11-07  3:26     ` Jarod Wilson
2010-10-15 14:14 Jiri Kosina
2010-09-14  9:05 Jiri Kosina
2010-08-18 22:00 Jiri Kosina
2010-08-04 14:34 Jiri Kosina
2010-07-12 16:58 Jiri Kosina
2010-05-26 11:24 Jiri Kosina
2010-05-19 12:59 Jiri Kosina
2010-05-20 16:20 ` Linus Torvalds
2010-05-20 16:26   ` Linus Torvalds
2010-05-20 16:36     ` Jiri Kosina
2010-05-20 17:01       ` Linus Torvalds
2010-05-20 17:13         ` Jiri Kosina
2010-05-21 11:26         ` Jiri Kosina
2010-05-07 21:39 Jiri Kosina
2010-05-10  6:40 ` Jiri Kosina
2010-04-02 14:38 Jiri Kosina
2010-03-16 14:19 Jiri Kosina
2010-02-25 16:43 Jiri Kosina
2010-01-13 12:52 Jiri Kosina
2009-12-07 17:53 Jiri Kosina
2009-04-30 14:00 Jiri Kosina
2009-05-01 22:14 ` Jiri Kosina

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=20130515091020.GA6819@gmail.com \
    --to=mingo@kernel.org \
    --cc=jkosina@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --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.