[PATCH 1/2] KVM: PPC: Add generic hpte management functions
Avi Kivity
avi at redhat.com
Tue Jun 22 22:07:49 EST 2010
On 06/22/2010 03:04 PM, Alexander Graf wrote:
> Avi Kivity wrote:
>
>> On 06/21/2010 04:44 PM, Alexander Graf wrote:
>>
>>> Currently the shadow paging code keeps an array of entries it knows
>>> about.
>>> Whenever the guest invalidates an entry, we loop through that entry,
>>> trying to invalidate matching parts.
>>>
>>> While this is a really simple implementation, it is probably the most
>>> ineffective one possible. So instead, let's keep an array of lists
>>> around
>>> that are indexed by a hash. This way each PTE can be added by 4
>>> list_add,
>>> removed by 4 list_del invocations and the search only needs to loop
>>> through
>>> entries that share the same hash.
>>>
>>> This patch implements said lookup and exports generic functions that
>>> both
>>> the 32-bit and 64-bit backend can use.
>>>
>>>
>> Mind explaining the all list in there?
>>
> The all list is used to flush all entries when we need to get rid of all
> entries, for example when we write a BAT.
>
>
Yes, I more or less gathered that when I saw patch 2. Does it make
sense to avoid it by looping over all vpte lists in the vpte hash? More
effort for a full flush, esp. when the mmu is sparse, but less for
individual pte operations.
--
error compiling committee.c: too many arguments to function
More information about the Linuxppc-dev
mailing list