From: Rene Herman <rene.herman@keyaccess.nl>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: dpreed@reed.com, Islam Amer <pharon@gmail.com>,
Alan Cox <alan@lxorguk.ukuu.org.uk>,
hpa@zytor.com, Pavel Machek <pavel@ucw.cz>,
Ingo Molnar <mingo@redhat.com>, Andi Kleen <andi@firstfloor.org>,
Thomas Gleixner <tglx@linutronix.de>,
Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay override
Date: Sun, 30 Dec 2007 15:14:16 +0100 [thread overview]
Message-ID: <4777A7B8.5080205@keyaccess.nl> (raw)
In-Reply-To: <alpine.LFD.1.00.0712300124440.32517@woody.linux-foundation.org>
On 30-12-07 10:30, Linus Torvalds wrote:
> On Sun, 30 Dec 2007, Rene Herman wrote:
>> This fixes "hwclock" triggered boottime hangs for a few HP/Compaq laptops
>> and might as such be applicable to 2.6.24 still.
>
> It's not a regression as far as I can see (ie we've always done that port
> 80 access for slow-down), and quite frankly, I think the code is horribly
> ugly.
It is indeed not a regression. Submitted it as a stop-gap measure for those
specific afflicted machines but I guess they'll mostly be able to google up
the problem and patch by now as well..
> Using a DMI quirk for something like this is just not maintainable. Are we
> going to live with doing new quirks forever? I'd rather just remove the
> slowdown entirely (obviously that is not for 2.6.24 either, though!), and
> drivers that then are shown to really need it could use their *own* ports.
And yes, "elegant" it is neither. It's a bit of a pesky problem though. Port
0x80 is a decidedly non-random port selection in so far that it's just about
the only available port with guaranteed (in a PC sense) effects -- various
chipsets make specific efforts to forward port 0x80 writes onto ISA due to
its use as a POST port by the PC BIOS meaning the outb outside its bus-level
effects also has fairly well defined timing characteristics. In practice, a
udelay(2) is going to satisfy the delay property though -- but doesn't do
anything for the other things the outb() does.
The legacy PIT, PIC and DMA and KB controllers have been mentioned in this
and previous incarnations of this same thread as hardware that in some
implementations need the outb to function properly but ofcourse, no _sane_
implementations do. With an arch that purports to support just about
anything though there's some fairly justified fear, uncertainty, doubt that
the ones to break aren't going to be found and reported quickly/easily. In
itself, that could mean it's also not something to be overly worried about,
but still not nice.
With the various races in (legacy) drivers additionally an early suggestion
by Andi Kleen to leave the outb in place for a DMI year < X (or no DMI
available) and just do nothing for > X might in fact be justified.
Rene.
next prev parent reply other threads:[~2007-12-30 14:17 UTC|newest]
Thread overview: 186+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-30 3:34 [PATCH] x86: provide a DMI based port 0x80 I/O delay override Rene Herman
2007-12-30 9:30 ` Linus Torvalds
2007-12-30 12:48 ` Andi Kleen
2007-12-30 13:05 ` Ingo Molnar
2007-12-30 16:08 ` Andi Kleen
2007-12-30 16:28 ` Ingo Molnar
2007-12-30 18:21 ` Andi Kleen
2007-12-30 13:03 ` Ingo Molnar
2007-12-30 14:14 ` Rene Herman [this message]
2007-12-30 14:47 ` Alan Cox
2007-12-30 15:28 ` Ingo Molnar
2007-12-30 15:38 ` Alan Cox
2007-12-30 16:01 ` Ingo Molnar
2007-12-30 16:48 ` Alan Cox
2007-12-30 17:08 ` Ingo Molnar
2007-12-30 18:14 ` Rene Herman
2007-12-30 18:39 ` Alan Cox
2007-12-30 19:33 ` Rene Herman
2007-12-30 20:00 ` Linus Torvalds
2007-12-30 20:09 ` Rene Herman
2007-12-30 21:20 ` David P. Reed
2007-12-30 21:36 ` Alan Cox
2007-12-30 23:14 ` David P. Reed
2007-12-31 0:23 ` H. Peter Anvin
2007-12-31 11:59 ` Alan Cox
2007-12-31 18:19 ` H. Peter Anvin
2007-12-31 12:23 ` Alan Cox
2007-12-31 14:35 ` Rene Herman
2007-12-31 15:56 ` Alan Cox
2007-12-31 20:22 ` Ondrej Zary
2007-12-31 21:25 ` Alan Cox
2007-12-31 21:47 ` H. Peter Anvin
2007-12-31 23:24 ` Alan Cox
2007-12-31 23:41 ` H. Peter Anvin
2008-01-02 3:01 ` Rene Herman
2007-12-30 17:10 ` Juergen Beisert
2007-12-30 20:50 ` H. Peter Anvin
2007-12-31 1:03 ` David P. Reed
2007-12-31 1:40 ` H. Peter Anvin
2007-12-30 15:47 ` Rene Herman
2007-12-30 16:07 ` Ingo Molnar
2007-12-30 16:27 ` Rene Herman
2007-12-30 17:06 ` Ingo Molnar
2007-12-30 17:54 ` Rene Herman
2007-12-30 18:29 ` Alan Cox
2007-12-30 18:43 ` Andi Kleen
2007-12-30 20:46 ` Ingo Molnar
2007-12-30 21:07 ` Rene Herman
2007-12-30 21:25 ` Ingo Molnar
2007-12-30 21:29 ` Alan Cox
2007-12-30 22:03 ` Ingo Molnar
2007-12-31 13:11 ` Pavel Machek
2008-01-01 16:48 ` Ingo Molnar
2007-12-30 18:40 ` Linus Torvalds
2007-12-30 20:34 ` Ingo Molnar
2007-12-30 21:28 ` Alan Cox
2007-12-30 21:54 ` Ingo Molnar
2007-12-30 21:13 ` Alan Cox
2007-12-31 15:29 ` Christer Weinigel
2007-12-31 13:21 ` Pavel Machek
2007-12-31 12:29 ` Alan Cox
[not found] <9BdU5-1YW-9@gated-at.bofh.it>
[not found] ` <9BeZN-3Gf-5@gated-at.bofh.it>
[not found] ` <9BnTB-1As-31@gated-at.bofh.it>
[not found] ` <9BrX4-8go-1@gated-at.bofh.it>
[not found] ` <9BuBG-4eR-51@gated-at.bofh.it>
[not found] ` <9BvRd-6aL-71@gated-at.bofh.it>
[not found] ` <9GRQW-1DX-13@gated-at.bofh.it>
[not found] ` <9GSah-23W-1@gated-at.bofh.it>
[not found] ` <9GSDy-2GD-23@gated-at.bofh.it>
[not found] ` <9GTpK-40d-15@gated-at.bofh.it>
[not found] ` <9GUvy-5H2-11@gated-at.bofh.it>
[not found] ` <9GVKU-7SS-25@gated-at.bofh.it>
2008-01-07 19:38 ` Bodo Eggert
2008-01-07 19:46 ` H. Peter Anvin
2008-01-07 22:02 ` Bodo Eggert
2008-01-07 22:10 ` H. Peter Anvin
2008-01-07 22:27 ` Bodo Eggert
2008-01-07 22:59 ` Rene Herman
2008-01-07 23:24 ` H. Peter Anvin
2008-01-07 23:26 ` Rene Herman
2008-01-08 0:10 ` [linux-kernel] " David P. Reed
2008-01-09 21:01 ` Matthieu castet
2008-01-08 12:51 ` Bodo Eggert
2008-01-08 14:09 ` Rene Herman
2008-01-08 14:31 ` Alan Cox
2008-01-07 23:25 ` Alan Cox
2008-01-08 13:17 ` Bodo Eggert
2008-01-08 14:38 ` Alan Cox
2008-01-08 3:15 ` Christer Weinigel
[not found] <fa.PuxU73ceCfHAUeWLO4W21Zbrm7A@ifi.uio.no>
[not found] ` <fa.ipKZdmvkNYmQ40C0cO+2u3eYohw@ifi.uio.no>
[not found] ` <fa.ppsa4qOLo1V8UlDNTucnaqIJmKA@ifi.uio.no>
[not found] ` <fa.3IG7z0AfHuLo9eQjn7Gkl/+/lnA@ifi.uio.no>
[not found] ` <fa.slc2tTnUBrTGO2aTi/C5UGHEEEM@ifi.uio.no>
[not found] ` <fa.8g+KfLLge6wS5cEnKhZJmdkIVAI@ifi.uio.no>
2007-12-30 18:22 ` Robert Hancock
[not found] ` <fa.XY5q1SY4QX+yjnE6p8T3kbTt/8I@ifi.uio.no>
[not found] ` <fa.KEBfnq5vGkAJSEhZSx7+yy+Hdbs@ifi.uio.no>
[not found] ` <fa.MLKgXLxgzIKzm4bQXjEOqg9oDwU@ifi.uio.no>
[not found] ` <fa.KbCnGLPlUEYe/Ibajd+hTY7A7Qw@ifi.uio.no>
2007-12-31 18:21 ` Robert Hancock
[not found] <9FXbU-3M4-11@gated-at.bofh.it>
[not found] ` <9G2Om-4hg-1@gated-at.bofh.it>
[not found] ` <9G7O3-3O2-7@gated-at.bofh.it>
[not found] ` <9G8qN-4TX-13@gated-at.bofh.it>
2007-12-30 17:50 ` Bodo Eggert
2007-12-30 18:10 ` Ingo Molnar
2007-12-30 20:56 ` H. Peter Anvin
2007-12-30 21:00 ` Ingo Molnar
2007-12-30 21:32 ` Bodo Eggert
2007-12-30 21:33 ` Alan Cox
2007-12-30 22:02 ` Ingo Molnar
2007-12-30 21:44 ` H. Peter Anvin
2007-12-30 21:58 ` Rene Herman
2007-12-30 20:53 ` H. Peter Anvin
2007-12-30 21:31 ` Alan Cox
2007-12-31 14:39 ` Bodo Eggert
2007-12-31 15:56 ` Alan Cox
[not found] <469578CD.3080609@reed.com>
[not found] ` <1184216528.12353.203.camel@chaos>
[not found] ` <1184218962.12353.209.camel@chaos>
[not found] ` <46964352.7040301@reed.com>
[not found] ` <1184253339.12353.223.camel@chaos>
[not found] ` <469697C6.50903@reed.com>
[not found] ` <1184274754.12353.254.camel@chaos>
2007-12-14 2:59 ` [PATCH] x86_64: fix problems due to use of "outb" to port 80 on some AMD64x2 laptops, etc David P. Reed
2007-12-14 13:15 ` Ingo Molnar
2007-12-14 18:02 ` H. Peter Anvin
2007-12-14 21:06 ` Pavel Machek
2007-12-14 22:13 ` H. Peter Anvin
2007-12-14 23:29 ` Alan Cox
2007-12-15 8:08 ` Paul Rolland
2007-12-15 8:13 ` Rene Herman
2007-12-15 20:27 ` H. Peter Anvin
2007-12-15 23:26 ` [PATCH] x86: " Rene Herman
2007-12-15 23:51 ` H. Peter Anvin
2007-12-16 13:15 ` [PATCH] x86: provide a DMI based port 0x80 I/O delay override Rene Herman
2007-12-16 15:22 ` Ingo Molnar
2007-12-17 1:43 ` Rene Herman
2007-12-17 2:05 ` H. Peter Anvin
2007-12-17 2:19 ` Rene Herman
2007-12-17 3:35 ` H. Peter Anvin
2007-12-17 13:02 ` Rene Herman
2007-12-17 17:14 ` H. Peter Anvin
2007-12-17 19:43 ` David P. Reed
2007-12-17 19:55 ` H. Peter Anvin
2007-12-17 21:02 ` David P. Reed
2007-12-17 21:17 ` H. Peter Anvin
2007-12-17 21:25 ` Alan Cox
2008-01-01 15:57 ` David P. Reed
2008-01-01 21:16 ` H. Peter Anvin
2008-01-01 15:59 ` David P. Reed
2008-01-01 16:15 ` Alan Cox
2008-01-01 16:43 ` Ingo Molnar
2008-01-01 17:32 ` Alan Cox
2008-01-01 18:45 ` Ingo Molnar
2008-01-01 20:14 ` Christer Weinigel
2008-01-01 21:13 ` Alan Cox
2008-01-01 21:07 ` Alan Cox
2008-01-02 10:04 ` Ingo Molnar
2008-01-02 13:47 ` Alan Cox
2008-01-02 15:35 ` Rene Herman
2008-01-02 15:50 ` Rene Herman
2008-01-01 17:32 ` Christer Weinigel
2008-01-01 18:46 ` Ingo Molnar
2008-01-01 19:35 ` Christer Weinigel
2008-01-01 19:59 ` Rene Herman
2008-01-01 20:55 ` Christer Weinigel
2008-01-01 21:24 ` H. Peter Anvin
2008-01-01 21:01 ` Ingo Molnar
2008-01-01 21:26 ` Alan Cox
2008-01-01 21:42 ` Christer Weinigel
2008-01-01 21:42 ` Rene Herman
2008-01-01 21:50 ` H. Peter Anvin
2008-01-01 21:21 ` H. Peter Anvin
2008-01-01 23:05 ` Christer Weinigel
2008-01-01 23:12 ` Alan Cox
2008-01-02 0:23 ` Christer Weinigel
2008-01-02 10:00 ` Ingo Molnar
2008-01-01 17:32 ` David P. Reed
2008-01-01 17:38 ` Alan Cox
2008-01-01 21:15 ` H. Peter Anvin
2008-01-01 21:35 ` Rene Herman
2008-01-01 21:44 ` H. Peter Anvin
2008-01-01 22:35 ` Rene Herman
2008-01-01 22:39 ` H. Peter Anvin
2008-01-01 23:11 ` Rene Herman
2008-01-02 0:25 ` Rene Herman
2008-01-02 0:55 ` Christer Weinigel
2008-01-02 1:00 ` Rene Herman
2008-01-02 2:27 ` H. Peter Anvin
2008-01-09 17:27 ` Maciej W. Rozycki
2008-01-09 18:18 ` H. Peter Anvin
2008-01-01 17:31 ` Pavel Machek
2008-01-01 17:33 ` David P. Reed
2007-12-17 4:09 ` H. Peter Anvin
2007-12-17 10:57 ` Ingo Molnar
2007-12-17 11:29 ` Ingo Molnar
2007-12-17 13:34 ` David P. Reed
2007-12-17 12:15 ` Rene Herman
2007-12-17 13:09 ` Ingo Molnar
2007-12-17 13:22 ` Rene Herman
2007-12-17 13:31 ` Pavel Machek
2007-12-17 13:31 ` Rene Herman
2007-12-17 13:32 ` David P. Reed
2007-12-17 13:36 ` Rene Herman
2007-12-17 14:39 ` Ingo Molnar
2007-12-17 16:12 ` Alan Cox
2007-12-17 16:48 ` Ingo Molnar
2007-12-17 20:48 ` Rene Herman
2007-12-17 20:57 ` H. Peter Anvin
2007-12-17 21:33 ` Rene Herman
2007-12-17 21:40 ` H. Peter Anvin
2007-12-17 21:46 ` Ingo Molnar
2007-12-17 21:50 ` Rene Herman
2007-12-17 21:41 ` Ingo Molnar
2007-12-17 21:47 ` Rene Herman
2007-12-17 21:56 ` Ingo Molnar
2007-12-17 22:01 ` Rene Herman
2007-12-17 22:18 ` David P. Reed
2007-12-17 19:38 ` David P. Reed
2007-12-17 19:55 ` H. Peter Anvin
2007-12-17 21:28 ` Ingo Molnar
2007-12-16 21:42 ` H. Peter Anvin
2007-12-17 1:48 ` Rene Herman
2007-12-17 1:53 ` H. Peter Anvin
2007-12-16 23:12 ` David P. Reed
2007-12-17 1:56 ` Rene Herman
2007-12-17 2:04 ` H. Peter Anvin
2007-12-17 2:15 ` Rene Herman
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=4777A7B8.5080205@keyaccess.nl \
--to=rene.herman@keyaccess.nl \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=andi@firstfloor.org \
--cc=dpreed@reed.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=pavel@ucw.cz \
--cc=pharon@gmail.com \
--cc=tglx@linutronix.de \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).