From: Ingo Molnar <mingo@elte.hu>
To: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
Cc: Andrew Morton <akpm@osdl.org>,
Arjan van de Ven <arjan@linux.intel.com>,
linux-kernel@vger.kernel.org
Subject: [patch, -rc5-mm1] lock validator: irqflags-trace entry.S fix
Date: Wed, 31 May 2006 17:20:30 +0200 [thread overview]
Message-ID: <20060531152030.GA15553@elte.hu> (raw)
In-Reply-To: <6bffcb0e0605310805l5e040e06i8ccc376a88667c34@mail.gmail.com>
* Michal Piotrowski <michal.k.k.piotrowski@gmail.com> wrote:
> >here's the fix for the irqs-off iret irqflags-tracing problem. Does this
> >fix the bug(s) on your box?
>
> Yes. Thanks!
great! Here's the cleaned up fix for Andrew:
----------------------------
Subject: lock validator: irqflags-trace entry.S fix
From: Ingo Molnar <mingo@elte.hu>
this fixes the irqflags-tracing bug reported (and relentlessly
debugged) by Michal Piotrowski: if we took a fault while interrupts
were disabled (for example of a vmalloc area) then irqflags-tracing
mistakenly assumed that the iret would re-enable interrupts.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
---
arch/i386/kernel/entry.S | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
Index: linux/arch/i386/kernel/entry.S
===================================================================
--- linux.orig/arch/i386/kernel/entry.S
+++ linux/arch/i386/kernel/entry.S
@@ -84,6 +84,15 @@ VM_MASK = 0x00020000
#define resume_kernel restore_nocheck
#endif
+.macro TRACE_IRQS_IRET
+#ifdef CONFIG_TRACE_IRQFLAGS
+ testl $IF_MASK,EFLAGS(%esp) # interrupts off?
+ jz 1f
+ TRACE_IRQS_ON
+1:
+#endif
+.endm
+
#ifdef CONFIG_VM86
#define resume_userspace_sig check_userspace
#else
@@ -364,7 +373,7 @@ restore_all:
CFI_REMEMBER_STATE
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
- TRACE_IRQS_ON
+ TRACE_IRQS_IRET
restore_nocheck_notrace:
RESTORE_REGS
addl $4, %esp
@@ -404,7 +413,7 @@ ldt_ss:
* and a switch16 pointer on top of the current frame. */
call setup_x86_bogus_stack
CFI_ADJUST_CFA_OFFSET -8 # frame has moved
- TRACE_IRQS_ON
+ TRACE_IRQS_IRET
RESTORE_REGS
lss 20+4(%esp), %esp # switch to 16bit stack
1: iret
next prev parent reply other threads:[~2006-05-31 15:20 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 ` Fwd: 2.6.17-rc5-mm1 Ingo Molnar
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 ` Ingo Molnar [this message]
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=20060531152030.GA15553@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@osdl.org \
--cc=arjan@linux.intel.com \
--cc=linux-kernel@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.