Messages in this thread | | | Date | Tue, 08 Jan 2008 17:07:08 -0800 | From | Jeremy Fitzhardinge <> | Subject | Re: [PATCH 00 of 10] x86: unify asm/pgtable.h |
| |
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 of the if()? If not, can't we just remove it and avoid this present problem?
Of course, there are a couple of other places which use naked __PAGE_KERNEL_* constants, most significantly in head_64.S's initial pagetable setup. Does that rely _PAGE_GLOBAL not being set? Also early_io_remap().
J
| |