svn commit: r233011 - head/sys/powerpc/aim

Alan Cox alc at rice.edu
Thu Mar 15 23:40:36 UTC 2012


On 3/15/2012 5:55 PM, Nathan Whitehorn wrote:
> On 03/15/12 17:18, Alan Cox wrote:
>> On 3/15/2012 2:36 PM, Nathan Whitehorn wrote:
>>> Author: nwhitehorn
>>> Date: Thu Mar 15 19:36:52 2012
>>> New Revision: 233011
>>> URL: http://svn.freebsd.org/changeset/base/233011
>>>
>>> Log:
>>>    Improve algorithm for deciding whether to loop through all 
>>> process pages
>>>    or look them up individually in pmap_remove() and apply the same 
>>> logic
>>>    in the other ranged operation (pmap_protect). This speeds up make
>>>    installworld by a factor of 2 on powerpc64.
>>>
>>>    MFC after:    1 week
>>>
>>> Modified:
>>>    head/sys/powerpc/aim/mmu_oea64.c
>>>
>>
>> As an additional, related optimization, you should look into 
>> implementing pmap_remove_pages().
>>
>> Alan
>>
>
> Thanks! I didn't know about that one. Is there a reason it isn't 
> called at the end of vm_pageout_map_deactivate_pages(), which seems to 
> deactivate all pages with pmap_remove()?

Yes, at least two reasons come to mind.  Some implementations only 
accept the caller's current pmap as an argument.  Also, there shouldn't 
be any other threads besides the caller using the pmap.




More information about the svn-src-head mailing list