Re: [PATCH] KVM: MMU: update comment on the number of page role combinations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/16/21 12:07, Maxim Levitsky wrote:
- * But, even though there are 18 bits in the mask below, not all
combinations
+ * But, even though there are 20 bits in the mask
below, not all combinations
I to be honest counted 19 bits there (which includes the 'smm' bit),
but I might have made a mistake. I do wonder maybe it is better to
just remove that comment with explicit number?

Yes, they are 19.  But the explicit number is there to guide in
understanding how 19 goes down to 14 combinations.

Here is a better writeup:

 *   - invalid shadow pages are not accounted, so the bits are effectively 18
 *   - quadrant will only be used if gpte_is_8_bytes is zero (non-PAE paging);
 *     execonly and ad_disabled are only used for nested EPT which has
 *     gpte_is_8_bytes=1.  Therefore, 2 bits are always unused.
 *   - the 4 bits of level are effectively limited to the values 2/3/4/5,
 *     as 4k SPs are not tracked (allowed to go unsync).  In addition non-PAE
 *     paging has exactly one upper level, making level effectively redundant
 *     when gpte_is_8_bytes=0.
 *   - on top of this, smep_andnot_wp and smap_andnot_wp are only set if cr0_wp=0,
 *     therefore these three bits only give rise to 5 possibilities.

FWIW, the full count becomes 6400 unless I screwed up the math.

Paolo




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux