Re: [PATCH 03/11] KVM: x86: fast emulate repeat string write instructions

Xiao Guangrong
2011-07-27T09:35:55Z

On 07/27/2011 05:04 PM, Avi Kivity wrote:
> On 07/26/2011 02:26 PM, Xiao Guangrong wrote:
>> We usually use repeat string instructions to clear the page, for example,
>> we call memset to clear a page table, stosb is used in this function, and
>> repeated for 1024 times, that means we should occupy mmu lock for 1024 times
>> and walking shadow page cache for 1024 times, it is terrible
>>
>> In fact, if it is the repeat string instructions emulated and it is not a
>> IO/MMIO access, we can zap all the corresponding shadow pages and return to the
>> guest, then the mapping can became writable and directly write the page
>
> Please generalize this to fail emulation on all non-page-table instructions when emulating due to a write protected page that we can unprotect.
>

OK, will do it in the next version, thanks!