lkml.org 
[lkml]   [2008]   [May]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Bug 10732] REGRESSION: 2.6.26-rc2-git4: X server failed start onX61s laptop
Hugh Dickins wrote:
>> And can we agree to never EVER use that PAGE_MASK thing (which was only
>> ever meant to work on *addresses*) for any pte operations (including the
>> definition of PTE_MASK)? Because PAGE_MASK is very much the word-size, and
>> in 32-bit PAE, the page table entry is bigger.
>>
>> IOE, PTE_MASK should be a "pteval_t". And it should have absolutely
>> *nothing* to do with PAGE_MASK. EVER.
>>
>
> Yes, Jeremy makes it a pteval_t. (My builds and Ingo's builds succeed,
> but I've not worked out how that goes down in assembly: there was an
> _AT macro in there before, which you've kept too - Jeremy?)
>

I got rid of a bunch of _AT() uses because the constants aren't used in
.S files anywhere. Also, I couldn't see how to represent a 64-bit
constant in assembler, so I wasn't sure of their correctness (the as
manual is irritatingly vague on the matter).

> Yes, I'm highly resistant to taking untested patches here. The two-liner
> I sent last night was about my fifth attempt to get it working, and I did
> start off from a small PTE_MASK correction which didn't work at all. It
> looked rather like yours, I guess I missed the __PHYSICAL_LOW_BITS part.
> Jeremy's goes a lot further, he'll know the gotchas better.
>

__PHYSICAL_LOW_BITS is a bit more elegant than what I did there (the
problem is getting a physaddr_t-width PAGE_MASK). But the formulation
in my patch certainly works.

J


\
 
 \ /
  Last update: 2008-05-20 08:35    [W:0.092 / U:1.412 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site