On 28/06/2016 19:33, Bandan Das wrote: >>> >> static int is_shadow_present_pte(u64 pte) >>> >> { >>> >> - return pte & PT_PRESENT_MASK && !is_mmio_spte(pte); >>> >> + return pte & (PT_PRESENT_MASK | shadow_x_mask) && >>> >> + !is_mmio_spte(pte); >> > >> > This should really be pte & 7 when using EPT. But this is okay as an >> > alternative to a new shadow_present_mask. > I could revive shadow_xonly_valid probably... Anyway, for now I will > add a TODO comment here.
It's okay to it like this, because the only invalid PTEs reaching this point are those that is_mmio_spte filters away. Hence you'll never get -W- PTEs here, and pte & 7 is really the same as how you wrote it. It's pretty clever, and doesn't need a TODO at all. :) Paolo