Re: [PATCH] [RFC] fix kernel crash (protection id trap) when

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 19, 2008 at 12:39:31PM -0500, Kyle McMartin wrote:
> On Fri, Dec 19, 2008 at 12:36:15PM -0500, Carlos O'Donell wrote:
> > On Fri, Dec 19, 2008 at 12:33 PM, Kyle McMartin <kyle@xxxxxxxxxxxxx> wrote:
> > > On Fri, Dec 19, 2008 at 12:28:40PM -0500, Carlos O'Donell wrote:
> > >> On Fri, Dec 19, 2008 at 11:44 AM, Kyle McMartin <kyle@xxxxxxxxxxxxx> wrote:
> > >> > SPACEID_SHIFT is the number of spaceid bits, which is 32 on 64-bit.
> > >>
> > >> On 64-bit SPACEID_SHIFT is 11 bits. Verified by hand and by gcc -E/-dM
> > >> and test program.
> > >>
> > >> On 32-bit SPACEID_SHIFT is 0 bits. Verified by hand.
> > >>
> > >
> > > I just assumed MAX_ADDRBITS was 64. Anyway the point is moot.
> > >
> > 
> > I was just crossing the T's and dotting the I's. In case we need to
> > remember what SPACEID_SHIFT value was if we see something sketchy.
> > 
> > On 64-bit if you are not using 4kb pages, then SPACEID_SHIFT is 0 bits
> > like a 32-bit kernel.
> > 
> 
> That's a bug, and explains one of the reasons why !4K pages are broken.
> 

Or rather not, my thinking being that context << 1 might end up being
33-bits, but I forgot we clip spaceids to the width of the protection
registers, so this can't happen.
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux