Re: [PATCH 00 of 10] x86: unify asm/pgtable.h

Andi Kleen
2008-01-09T01:12:44Z

On Tue, Jan 08, 2008 at 05:07:08PM -0800, Jeremy Fitzhardinge wrote:
> Ingo Molnar wrote:
>> * Jeremy Fitzhardinge <jeremy@goop.org> wrote:
>>
>>
>>> In other words, prot and ref_prot can never be equal, so this path is
>>> always taken, and the other branch which tests pte_huge() is never run.
>>>
>>> Andi? Jan? Is this code just buggy, or is there something else going on
>>> here?
>>>
>>
>> this code is plain buggy but fixing it triggered driver bugs in the past
>> so we've been procrastinating it forever ...
>>
>
> What kind of driver bugs? Do drivers manage to get into the other branch

That was just the return value issue that caused drivers to fail through
ioremap() iirc. It would error out for unmapped holes and then fail
ioremap I don't think it's related.

> of the if()? If not, can't we just remove it and avoid this present
> problem?

That would just hide your problem.

-Andi