From: Ingo Molnar <mingo@elte.hu>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: heukelum@fastmail.fm, linux-kernel@vger.kernel.org, ak@suse.de
Subject: Re: [RFC/PATCH] i386: handle all exceptions with interrupts off initially
Date: Wed, 10 Sep 2008 07:53:37 +0200 [thread overview]
Message-ID: <20080910055337.GA9765@elte.hu> (raw)
In-Reply-To: <48C73EB8.8020405@zytor.com>
* H. Peter Anvin <hpa@zytor.com> wrote:
> heukelum@fastmail.fm wrote:
>> From: Alexander van Heukelum <heukelum@fastmail.fm>
>>
>> x86_64 handles all exceptions with interrupts off initially, this
>> bisectable patch set does the same for i386, in (very) small steps.
>> If this is acceptable, it would make further unification of traps_32.c
>> and traps_64.c a lot easier. If it is not... why?
>>
>
> The only reason not to is that one generally doesn't want to disable
> interrupts unless necessary (bad for latency.) On 64 bits there are
> stack switches which make disabling interrupts mandatory. The only
> pitfall is if there is any code which is likely to take time, but I
> highly doubt it.
the entry paths here are really short (we enable irqs almost
immediately) so it's a non-issue in terms of worst-case latencies.
> In other words, it's not something we want to do "just because", but
> to the extent that it provides real benefit, it makes sense.
this is historically pretty fragile code so bringing the 32-bit and
64-bit variants more in line sounds like a good reason to me. For
example we had various long-living irq state annotation bugs (the
combination of kprobes and lockdep, etc.) that remained unfixed partly
due to this assymetry.
There will be details i'm sure, but the series looks quite bisectable.
Ingo
next prev parent reply other threads:[~2008-09-10 5:53 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-09 19:55 [RFC/PATCH] i386: handle all exceptions with interrupts off initially heukelum
2008-09-09 19:55 ` [PATCH 1/24] i386: remove kprobes' restore_interrupts in favour of conditional_sti heukelum
2008-09-09 19:55 ` [PATCH 2/24] i386: prepare to convert exceptions to interrupts heukelum
2008-09-09 19:55 ` [PATCH 3/24] i386: convert hardware exception 0 to an interrupt gate heukelum
2008-09-09 19:55 ` [PATCH 4/24] i386: expand exception 3 DO_TRAP macro heukelum
2008-09-09 19:55 ` [PATCH 5/24] i386: convert hardware exception 4 to an interrupt gate heukelum
2008-09-09 19:56 ` [PATCH 6/24] i386: convert hardware exception 5 " heukelum
2008-09-09 19:56 ` [PATCH 7/24] i386: convert hardware exception 6 " heukelum
2008-09-09 19:56 ` [PATCH 8/24] i386: convert hardware exception 7 " heukelum
2008-09-09 19:56 ` [PATCH 9/24] i386: convert hardware exception 9 " heukelum
2008-09-09 19:56 ` [PATCH 10/24] i386: convert hardware exception 10 " heukelum
2008-09-09 19:56 ` [PATCH 11/24] i386: convert hardware exception 11 " heukelum
2008-09-09 19:56 ` [PATCH 12/24] i386: convert hardware exception 12 " heukelum
2008-09-09 19:56 ` [PATCH 13/24] i386: convert hardware exception 13 " heukelum
2008-09-09 19:56 ` [PATCH 14/24] i386: convert hardware exception 15 " heukelum
2008-09-09 19:56 ` [PATCH 15/24] i386: convert hardware exception 16 " heukelum
2008-09-09 19:56 ` [PATCH 16/24] i386: convert hardware exception 17 " heukelum
2008-09-09 19:56 ` [PATCH 17/24] i386: convert hardware exception 18 " heukelum
2008-09-09 19:56 ` [PATCH 18/24] i386: convert hardware exception 19 " heukelum
2008-09-09 19:56 ` [PATCH 19/24] i386: remove temporary DO_TRAP macros, expanding the last one used heukelum
2008-09-09 19:56 ` [PATCH 20/24] i386: add TRACE_IRQS_OFF to entry_32.S in 'error_code' heukelum
2008-09-09 19:56 ` [PATCH 21/24] i386: add TRACE_IRQS_OFF for exception 1 (debug) heukelum
2008-09-09 19:56 ` [PATCH 22/24] i386: add TRACE_IRQS_OFF for the nmi heukelum
2008-09-09 19:56 ` [PATCH 23/24] i386: add TRACE_IRQS_OFF for the exception 3 (int3) heukelum
2008-09-09 19:56 ` [PATCH 24/24] i386: trace_hardirqs_fixup should now not be necessary: irqs are off heukelum
2009-01-12 17:21 ` [PATCH 22/24] i386: add TRACE_IRQS_OFF for the nmi Peter Zijlstra
2009-01-12 18:39 ` Ingo Molnar
2009-01-12 18:43 ` Peter Zijlstra
2009-01-12 20:50 ` Alexander van Heukelum
2008-09-10 3:27 ` [RFC/PATCH] i386: handle all exceptions with interrupts off initially H. Peter Anvin
2008-09-10 5:53 ` Ingo Molnar [this message]
2008-09-10 5:59 ` H. Peter Anvin
2008-09-10 7:00 ` Ingo Molnar
2008-09-10 7:24 ` Ingo Molnar
2008-09-10 9:36 ` Alexander van Heukelum
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=20080910055337.GA9765@elte.hu \
--to=mingo@elte.hu \
--cc=ak@suse.de \
--cc=heukelum@fastmail.fm \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox