Re: vm changes from linux-2.6.14 to linux-2.6.15

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

 



From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Date: Mon, 30 Apr 2007 14:54:14 -0700

> On Mon, 30 Apr 2007 22:36:27 +0100 (BST)
> Mark Fortescue <mark@xxxxxxxxxxxxxxxxxx> wrote:
> 
> > Hi all,
> > 
> > I have tracked down a failure to successfully load/run the init task on my 
> > Sparcstation 1 clone (SS1) and Sparcstation 2 (SS2), sparc32 sun4c 
> > systems, to a patch:
> > 
> >    commit 1a44e149084d772a1bcf4cdbdde8a013a8a1cfde.
> >    [PATCH] .text page fault SMP scalability optimization
> > 
> > Removing this patch fixes the issue and allows me to use kernels later 
> > than v2.5.14. (tested using linux-2.6.20.9).
> > 
> > Given the comment provided by the git bisect, backing out this patch will 
> > probably have undesirable conseqnences for other platforms (especially 
> > powerpc64) so, if an architecture independent solution is not available, 
> > some/all of the code in handle_pte_fault() in mm/memory.c will need be to 
> > made architecture dependent.
> > 
> > I am not sufficiently familear with the how the SS1/SS2 mmu works and how 
> > the linux memory management system works to understand why this patch 
> > prevents my sun4c SS1/SS2 systems from working.
> > 
> > Advice and help on the approch to take and any code changes regarding this 
> > issue would be most welcome.
> > 
> 
> Interesting - thanks for working that out.  Let's keep linux-mm on cc please.

You can't elide the update_mmu_cache() call on sun4c because that will
miss some critical TLB setups which are performed there.

The sun4c TLB has two tiers of entries:

1) segment maps, these hold ptes for a range of addresses
2) ptes, mapped into segment maps

update_mmu_cache() on sun4c take care of allocating and setting
up the segment maps, so if you elide the call this never happens
and we fault forever.
-
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux