Messages in this thread | | | Date | Thu, 18 Apr 2013 11:15:37 +0800 | From | Xiao Guangrong <> | Subject | Re: [PATCH v3 07/15] KVM: MMU: introduce invalid rmap handlers |
| |
On 04/18/2013 07:38 AM, Marcelo Tosatti wrote: > On Tue, Apr 16, 2013 at 02:32:45PM +0800, Xiao Guangrong wrote: >> Invalid rmaps is the rmap of the invalid memslot which is being >> deleted, especially, we can treat all rmaps are invalid when >> kvm is being destroyed since all memslot will be deleted soon. >> MMU should remove all sptes on these rmaps before the invalid >> memslot fully deleted >> >> The reason why we separately handle invalid rmap is we want to >> unmap invalid-rmap out of mmu-lock to achieve scale performance >> on intensive memory and vcpu used guest > > Better try to make the code simpler, and introduce complexity only > if necessary.
Marcelo,
This code is necessary to implement "unmap invalid rmap out of mmu-lock", the reason why we need it is that ...
> > The idea to zap the roots is very elegant and apparently effective. What > are its problems?
I mentioned it in 00/15:
* Challenges Some page invalidation is requested when memslot is moved or deleted and kvm is being destroy who call zap_all_pages to delete all sp using their rmap and lpage-info, after call zap_all_pages, the rmap and lpage-info will be freed. So, we should implement a fast way to delete sp from the rmap and lpage-info.
| |