Messages in this thread | | | Date | Tue, 16 Nov 2021 13:28:17 +0100 | Subject | Re: [PATCH] KVM: MMU: update comment on the number of page role combinations | From | Paolo Bonzini <> |
| |
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
| |