>>> On 02.10.17 at 18:13, wrote:
> @@ -518,26 +522,29 @@ static void invalidate_shadow_ldt(struct vcpu *v, int
> flush)
> if ( v->arch.pv_vcpu.shadow_ldt_mapcnt == 0 )
> goto out;
>
> -v->arch.pv_vcpu.shadow_ldt_mapcnt = 0;
> pl1e = pv_ldt_ptes(v);
>
> for ( i = 0;
Modify invalidate_shadow_ldt() to return a boolean indicating whether mappings
have been dropped, rather than taking a flush parameter. Tweak the internal
logic to be able to ASSERT() that v->arch.pv_vcpu.shadow_ldt_mapcnt matches
the number of PTEs removed.
This allows MMUEXTOP_SET_LDT to avoid