Re: [PATCH v3 2/3] KVM: MMU: fix accessed bit set on prefault path

Xiao Guangrong
2010-11-30T18:11:02Z

On 12/01/2010 01:50 AM, Gleb Natapov wrote:
> On Wed, Dec 01, 2010 at 12:52:22AM +0800, Xiao Guangrong wrote:
>> On 11/30/2010 09:29 PM, Gleb Natapov wrote:
>>
>>>> + if (!shadow_accessed_mask)
>>>> + return;
>>>> +
>>> I don't get this. As far as I can see VMX inits shadow_accessed_mask to
>>> be zero if ept is enabled. This line here means that we never prefault with ept
>>> enabled. It is opposite from what it should be.
>>>
>>
>> Since it's no accessed bit on EPT, it's no way to distinguish between actually
>> accessed translations and prefault.
> Why is this a problem? We do what this page to not be evicted again
> since we expect it to be accessed.
>

It can't avoid the page to be evicted again since the page is marked accessed only
when spte is droped or updated.