All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <peterz@infradead.org>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: Dave Young <hidave.darkstar@gmail.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@elte.hu>
Subject: Re: 2.6.24-rc7 lockdep warning when poweroff
Date: Mon, 14 Jan 2008 11:41:28 +0100	[thread overview]
Message-ID: <1200307288.7415.11.camel@twins> (raw)
In-Reply-To: <1200306902.5887.39.camel@johannes.berg>


On Mon, 2008-01-14 at 11:35 +0100, Johannes Berg wrote:
> > > When I "halt -p", lockdep warnings triggered as following (hand copy):
> > > 
> > > WARNING : at kernel/lockdep.c: 700 lookup_lock_class()
> > > 
> > > <snip>
> > > lock_acquire
> > > cleanup_workqueue_thread
> > > workqueue_cpu_callback
> > > notifier_call_chain
> > > __raw_notifier_call_chain
> > > raw_notifier_call_chain
> > > __cpu_down
> > > disable_nonboot_cpus
> > > kernel_power_off
> > > sys_reboot
> > > <snip>
> > 
> > My first guess would be a __create_workqueue_key() where a key is
> > re-used with a different workqueue name.
> 
> Hm, can you elaborate how you got there from the trace above? I don't
> think I'm following.

The warning that triggered (lockdep.c:700) means that one class (key)
was used with more than one name.

Looking at cleanup_workqueue_thread(), the lock_acquire() there works on
wq->lockdep_map, and that is only initialized at one spot:
__create_workqueue_key(), thus it stands to reason that that was
mis-used.




  reply	other threads:[~2008-01-14 10:41 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-14  9:04 2.6.24-rc7 lockdep warning when poweroff Dave Young
2008-01-14  9:24 ` Peter Zijlstra
2008-01-14 10:35   ` Johannes Berg
2008-01-14 10:41     ` Peter Zijlstra [this message]
2008-01-14 10:51       ` Johannes Berg
2008-01-15  0:31         ` Dave Young
2008-01-15  1:24           ` Dave Young
2008-01-15  8:42             ` Peter Zijlstra
2008-01-15 10:41         ` Johannes Berg
2008-01-15 12:21           ` Peter Zijlstra
2008-01-15 12:39             ` Johannes Berg
2008-01-15 12:47               ` Peter Zijlstra
2008-01-15 13:04                 ` [PATCH for 2.6.24] fix workqueue creation API lockdep interaction Johannes Berg
2008-01-16  4:41                   ` Dave Young
2008-01-16  8:11                 ` 2.6.24-rc7 lockdep warning when poweroff Ingo Molnar
2008-01-15 23:54             ` Johannes Berg

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=1200307288.7415.11.camel@twins \
    --to=peterz@infradead.org \
    --cc=hidave.darkstar@gmail.com \
    --cc=johannes@sipsolutions.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --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.