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