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

[Xen-devel] HYBRID: max_mapped_pfn in ept_set_entry()

Hi guys,

I've a question. For my hybrid (PV in HVM) dom0 I do 1-1 mapping for 
mmio pages.  So, gpfn 000fbf23 maps to 000fbf23 in EPT. The
max_mapped_pfn is not adjusted in ept_set_entry() because the mfn is
not valid: 

    if ( mfn_valid(mfn_x(mfn)) &&
         (gfn + (1UL << order) - 1 > p2m->max_mapped_pfn) )
         p2m->max_mapped_pfn = gfn + (1UL << order) - 1;

As a result, clear_mmio_p2m_entry() fails because ept_get_entry() fails
    if ( gfn > p2m->max_mapped_pfn )
            goto out;

I'm trying to figure the right thing to do here. Should I just change
the "gfn > p2m->max_mapped_pfn" in ept_get_entry() to check for
INVALID_MFN? I really shouldn't be adjusting max_mapped_pfn for MMIO
pages, right?


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.