Re: [PATCH] KVM: VMX: refactor global page-sized bitmaps

From: Radim KrÄmÃÅ
Date: Tue Sep 27 2016 - 10:13:21 EST


2016-09-23 11:35+0200, Paolo Bonzini:
> On 23/09/2016 01:18, Radim KrÄmÃÅ wrote:
>> We've had 10 page-sized bitmaps that were being allocated and freed one
>> by one when we could just use a cycle and MSR bitmaps had a lot of
>> useless code lying around.
>>
>> This patch
>> * enumerates vmx bitmaps and uses an array to store them
>> * replaces vmx_enable_intercept_msr_read_x2apic() with a condition
>> * joins vmx_msr_disable_intercept_msr_{read,write}_x2apic()
>> * renames x2apic_apicv_inactive msr_bitmaps to x2apic and original
>> x2apic bitmaps to x2apic_apicv
>
> It's almost like this could be split in four patches! :) Seriously, I
> like it very much but it's very hard to review.

Yeah, sorry, v2 will be split.

> Also, while it's a good idea to keep the bitmaps in an array,
> vmx_bitmaps[vmread_bitmap] is not very readable. Please make the enum
> uppercase, and possibly add
>
> #define vmread_bitmap (vmx_bitmaps[VMREAD_BITMAP])

This will make it much easier to review, thanks.