Re: RFC: outb 0x80 in inb_p, outb_p harmful on some modern AMD64 with MCP51 laptops

Rene Herman
2007-12-11T20:02:35Z

On 11-12-07 20:16, Pavel Machek wrote:

>> Pavel Machek already posted one. His udelay(8) wants to be less -- 1 or "to
>> be safe" perhaps 2.
>>
>> http://lkml.org/lkml/2007/12/9/131
>
> 2 at least; that's how long outb(0x80) takes on one of my
> machines. Actually, ISA can go down to 4MHz, so maybe we should be
> using 4 usec.... but I guess I'm paranoid here.

4 isn't sensible. There have been machines capable both of running Linux and
their ISA bus at less than 8 MHz (if only for example by picking a 5 divisor
on a system that was capable of hosting a 40 Mhz 386/486 but using a slower
CPU) but not by much. And machines doing that and running Linux, even more
so "today": 0.

My posted test program (although there seems to be something wrong with it
since it's influenced by compiler optimisation) is showing more than 1 but
note that on the vast majority of machines, 0 would in fact do. 1 will on
all, 2 will as well.

Rene.