>>> On 26.01.17 at 13:39, <dw...@infradead.org> wrote: > --- a/xen/arch/x86/hvm/mtrr.c > +++ b/xen/arch/x86/hvm/mtrr.c > @@ -773,18 +773,20 @@ int epte_get_entry_emt(struct domain *d, unsigned long > gfn, mfn_t mfn, > if ( v->domain != d ) > v = d->vcpu ? d->vcpu[0] : NULL; > > - if ( !mfn_valid(mfn_x(mfn)) || > - rangeset_contains_range(mmio_ro_ranges, mfn_x(mfn), > - mfn_x(mfn) + (1UL << order) - 1) ) > + /* Mask, not add, for order so it works with INVALID_MFN on unmapping */ > + if ( rangeset_overlaps_range(mmio_ro_ranges, mfn_x(mfn), > + mfn_x(mfn) | ((1UL << order) - 1)) )
Hmm, didn't you say you'd take care of the hard tabs? Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel