lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20071230170612.GA16502@elte.hu>
Date:	Sun, 30 Dec 2007 18:06:12 +0100
From:	Ingo Molnar <mingo@...e.hu>
To:	Rene Herman <rene.herman@...access.nl>
Cc:	Alan Cox <alan@...rguk.ukuu.org.uk>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	dpreed@...d.com, Islam Amer <pharon@...il.com>, hpa@...or.com,
	Pavel Machek <pavel@....cz>, Ingo Molnar <mingo@...hat.com>,
	Andi Kleen <andi@...stfloor.org>,
	Thomas Gleixner <tglx@...utronix.de>,
	Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay override


* Rene Herman <rene.herman@...access.nl> wrote:

>>> Hardly. Duron 1300 on AMD756:
>>
>> but that does not matter at all: that's not '90s era hardware that we 
>> are (slightly) worried about wrt. IO delays in misc_32.c. (i.e. on 
>> _real_ ISA systems)
>
> Real ISA systems will also generally respond faster to it than the 
> unused port (this thing actually has an ISA bus but not VGA on it 
> ofcourse) which means that "a perfect delay register" it is not. But 
> yes, I have an actual Am386DX-40 with ISA VGA up and running which 
> also doesn't care either way, about the ones in misc_32.c or anywhere 
> else for that matter.

yeah - and that's typical of most _p() use: most of them are totally 
bogus, but the global existence of the delay was used as a "it _might_ 
break system" boogey-man against replacing it.

so _IF_ we do any delay in x86 platform drivers, we at most do a delay 
on the order of the round-trip latency to the same piece of hardware we 
are handling. That isolates the quirk to the same hardware category, 
instead of creating these cross-dependencies and assumed dependencies on 
fixed, absolute timings. (and most hardware timing bugs are not absolute 
but depend on some bus speed/frequency, thus round-trip latency of that 
hardware is a good approximation of that. The round-trip to the same 
hardware also correctly adds any assumed PCI posting dependencies.)

So the current plan is to go with an io_delay=udelay default in v2.6.25, 
to give this a migration window, and io_delay=none in v2.6.26 [and a 
complete removal of arch/x86/kernel/io_delay.c], once the _p() uses are 
fixed up. This is gradual enough to notice any regressions we care about 
and also makes it nicely bisectable and gradual.

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ