From: Ingo Molnar <mingo@elte.hu>
To: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
Cc: Arjan van de Ven <arjan@linux.intel.com>,
linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org,
Andrew Morton <akpm@osdl.org>
Subject: Re: Fwd: 2.6.17-rc5-mm1
Date: Tue, 30 May 2006 21:59:02 +0200 [thread overview]
Message-ID: <20060530195902.GD22742@elte.hu> (raw)
In-Reply-To: <6bffcb0e0605301157o6b7c5f66q3c9f151cbb4537d5@mail.gmail.com>
* Michal Piotrowski <michal.k.k.piotrowski@gmail.com> wrote:
> ============================
> [ BUG: illegal lock usage! ]
> ----------------------------
> illegal {in-hardirq-W} -> {hardirq-on-W} usage.
sorry - the messages are indeed cryptic, partly because there are lots
of illegal state transitions and the printout is atomated, and partly to
keep the already sizable lockdep printouts as compact as possible.
What happened here is that a lock (-type) that had the {in-hardirq-W}
state bit set, and lockdep observed an event that also sets the
{hardirq-on-W} state bit: illegal.
here is a rough translation of the usage history state bits:
{in-hardirq-W}: lock was exclusively acquired in hardirq context
{in-hardirq-R}: lock was read-acquired in hardirq context
{in-softirq-W}: lock was exclusively acquired in softirq context
{in-softirq-R}: lock was read-acquired in softirq context
{hardirq-on-W}: lock was held exclusively with hardirqs enabled
{hardirq-on-R}: lock was read-held with hardirqs enabled
{softirq-on-W}: lock was held exclusively with softirqs enabled
{softirq-on-R}: lock was read-held with softirqs enabled
to interpret the lock state at a glance, there's an even shorter
representation of the state bits:
(&base->lock#2){++..}
^^^^
'+' : irq-safe [lock was taken in irq context]
'-' : irq-unsafe [lock was taken with irqs enabled]
'.' : unknown [lock has not yet become irq-safe or irq-unsafe]
'?' : read-locked with both hardirq context and with irqs enabled
the first character is for exclusive-locking in hardirqs, the second for
exclusive-locking in softirqs, the third is for read-locking in
hardirqs, the fourth is for read-locking in softirqs.
this means that the "{++..}" sequence shows that this lock is
hardirq-safe and softirq-safe, and was never read-locked. [the later one
is not surprising from a spinlock - but lockdep doesnt know that it's a
spinlock, it deals with all lock types in a unified way]
(more details about the usage history state bits are in
Documentation/lockdep-design.txt and in include/linux/lockdep.h)
Ingo
next prev parent reply other threads:[~2006-05-30 19:58 UTC|newest]
Thread overview: 123+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-30 9:29 2.6.17-rc5-mm1 Andrew Morton
2006-05-30 9:42 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 10:05 ` [patch, -rc5-mm1] genirq: ia64 build fix Ingo Molnar
2006-05-30 10:09 ` [patch, -rc5-mm1] lock validator, irqtrace: support non-x86 architectures Ingo Molnar
2006-05-30 10:11 ` [patch, -rc5-mm1] lock validator: rwsem build fix for " Ingo Molnar
2006-05-30 10:12 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 10:48 ` BUG: possible deadlock detected! (sound) [Was: 2.6.17-rc5-mm1] Jiri Slaby
2006-05-30 10:48 ` Jiri Slaby
2006-05-30 11:06 ` Arjan van de Ven
2006-05-30 11:06 ` Arjan van de Ven
2006-05-30 12:44 ` Takashi Iwai
2006-05-30 12:59 ` Arjan van de Ven
2006-05-30 12:59 ` Arjan van de Ven
2006-05-30 13:09 ` Jiri Slaby
2006-05-30 13:09 ` Jiri Slaby
2006-06-01 15:28 ` Jiri Slaby
2006-06-01 15:28 ` Jiri Slaby
2006-05-30 12:44 ` Takashi Iwai
2006-05-30 11:02 ` BUG: warning at ... (netlink) " Jiri Slaby
2006-05-30 11:55 ` [patch, -rc5-mm1] lock validator: remove softirq.c WARN_ON Ingo Molnar
2006-05-30 16:00 ` Alexey Kuznetsov
2006-05-30 16:05 ` Arjan van de Ven
2006-05-30 16:15 ` Alexey Kuznetsov
2006-05-30 11:11 ` [patch, -rc5-mm1] lock validator, fix NULL type->name bug Ingo Molnar
2006-05-30 11:58 ` Mike Galbraith
2006-05-30 12:02 ` Ingo Molnar
2006-05-30 12:06 ` Mike Galbraith
2006-05-30 12:05 ` Mike Galbraith
2006-05-30 12:06 ` Ingo Molnar
2006-05-30 12:17 ` Mike Galbraith
2006-05-30 12:19 ` Ingo Molnar
2006-05-30 12:28 ` Mike Galbraith
2006-05-30 12:29 ` [patch, -rc5-mm1] lock validator: disable NMI watchdog if CONFIG_LOCKDEP, i386 Ingo Molnar
2006-05-30 12:34 ` [patch, -rc5-mm1] lock validator: fix NMI-disabling on x86_64 Ingo Molnar
2006-05-30 12:44 ` [patch, -rc5-mm1] lock validator: disable NMI watchdog if CONFIG_LOCKDEP, i386 Mike Galbraith
2006-05-30 19:14 ` Andi Kleen
2006-05-30 19:47 ` Ingo Molnar
2006-05-30 20:05 ` Ingo Molnar
2006-05-30 19:54 ` Andrew Morton
2006-05-31 4:34 ` Keith Owens
2006-05-30 12:14 ` [patch, -rc5-mm1] lock validator, fix NULL type->name bug Arjan van de Ven
2006-05-30 12:46 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 19:13 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-30 15:59 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 16:08 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-30 18:51 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 16:16 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 19:28 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 19:48 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 18:39 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 19:04 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-31 14:56 ` [patch 1/1] selinux: fix sb_lock/sb_security_lock nesting (Was: Re: 2.6.17-rc5-mm1) Stephen Smalley
2006-05-31 15:49 ` James Morris
2006-05-30 19:55 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-30 20:20 ` 2.6.17-rc5-mm1 Dave Jones
2006-05-30 20:32 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-30 18:55 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 18:57 ` Fwd: 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 19:42 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 21:57 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 22:09 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:18 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:26 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:29 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:31 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 22:32 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 10:56 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:59 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-30 23:05 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 23:06 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 23:49 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-31 3:08 ` 2.6.17-rc5-mm1 Steven Rostedt
2006-05-30 19:59 ` Ingo Molnar [this message]
2006-05-30 19:45 ` 2.6.17-rc5-mm1 Andrew Morton
2006-05-31 13:51 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-31 14:02 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 14:05 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 14:12 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 15:05 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-31 15:20 ` [patch, -rc5-mm1] lock validator: irqflags-trace entry.S fix Ingo Molnar
2006-05-30 19:43 ` 2.6.17-rc5-mm1 Roland Dreier
2006-05-30 20:26 ` [patch, -rc5-mm1] lock validator: fix RT_HASH_LOCK_SZ Ingo Molnar
2006-05-30 20:43 ` Roland Dreier
2006-05-30 20:49 ` Ingo Molnar
2006-05-30 20:58 ` Roland Dreier
2006-05-30 21:01 ` Arjan van de Ven
2006-05-30 21:03 ` Roland Dreier
2006-05-30 21:14 ` Roland Dreier
2006-05-30 21:55 ` [Patch -rc5-mm1] Lockdep annotate rpc_populate for child-relationship of its mutex Arjan van de Ven
2006-05-30 21:19 ` [combo patch] lock validator -V2 Ingo Molnar
2006-05-30 21:07 ` 2.6.17-rc5-mm1 Brice Goglin
2006-05-30 21:07 ` 2.6.17-rc5-mm1 Laurent Riffard
2006-05-30 21:24 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-30 21:43 ` 2.6.17-rc5-mm1 Mel Gorman
2006-05-30 21:24 ` 2.6.17-rc5-mm1 Roland Dreier
2006-05-30 22:45 ` 2.6.17-rc5-mm1 Andrew Morton
2006-05-30 22:49 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:52 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 22:58 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 23:05 ` 2.6.17-rc5-mm1 Thomas Gleixner
2006-05-30 23:14 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-30 23:32 ` 2.6.17-rc5-mm1 Roland Dreier
2006-05-30 23:15 ` 2.6.17-rc5-mm1 Benjamin Herrenschmidt
2006-05-30 23:53 ` 2.6.17-rc5-mm1 Greg KH
2006-05-30 23:53 ` 2.6.17-rc5-mm1 Michal Piotrowski
2006-05-31 3:17 ` 2.6.17-rc5-mm1 Steven Rostedt
2006-05-31 4:14 ` 2.6.17-rc5-mm1 Andrew Morton
2006-05-31 6:31 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 11:50 ` 2.6.17-rc5-mm1 Steven Rostedt
2006-05-31 11:55 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 6:39 ` 2.6.17-rc5-mm1 Arjan van de Ven
2006-05-31 16:48 ` 2.6.17-rc5-mm1 Jesse Brandeburg
2006-05-31 23:08 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-05-31 17:39 ` 2.6.17-rc5-mm1 Laurent Riffard
2006-05-31 18:09 ` 2.6.17-rc5-mm1 Andrew Morton
2006-06-01 22:07 ` 2.6.17-rc5-mm1 Andrew Morton
2006-06-02 7:49 ` 2.6.17-rc5-mm1 Jan Beulich
2006-06-01 1:25 ` 2.6.17-rc5-mm1 Randy.Dunlap
2006-06-01 1:40 ` 2.6.17-rc5-mm1 Siddha, Suresh B
2006-06-01 2:17 ` 2.6.17-rc5-mm1 Randy.Dunlap
2006-06-01 1:43 ` 2.6.17-rc5-mm1 Andrew Morton
2006-06-01 6:14 ` 2.6.17-rc5-mm1 Ingo Molnar
2006-06-01 15:12 ` 2.6.17-rc5-mm1 Randy.Dunlap
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=20060530195902.GD22742@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@osdl.org \
--cc=arjan@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=michal.k.k.piotrowski@gmail.com \
/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.