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

Re: [Xen-devel] monitor access to pages with a specific p2m_type_t





On Sun, Jun 26, 2016 at 5:15 PM, sepanta s <sapanta992@xxxxxxxxx> wrote:



On Fri, Jun 24, 2016 at 8:10 PM, Tamas K Lengyel <tamas@xxxxxxxxxxxxx> wrote:


On Jun 24, 2016 05:19, "Razvan Cojocaru" <rcojocaru@xxxxxxxxxxxxxxx> wrote:
>
> On 06/24/2016 02:05 PM, George Dunlap wrote:
> > On Wed, Jun 22, 2016 at 12:38 PM, sepanta s <sapanta992@xxxxxxxxx> wrote:
> >> Hi,
> >> Is it possible to monitor the access on the pages withp2m_type_t
> >> p2m_ram_shared?
> >
> > cc'ing Tamas and Razvan
>
> Thanks for the CC. Judging by the "if ( npfec.write_access && (p2mt ==
> p2m_ram_shared) )" line in hvm_hap_nested_page_fault() (from
> xen/arch/x86/hvm/hvm.c), I'd say it certainly looks possible. But I
> don't know what the context of the question is.
>
>
> Thanks,
> Razvan

The question is just getting the gfn and mfn of the page which is as type: p2m_ram_shared to see which pages are written and unshared. 

Yes, p2m_ram_shared type pages can be monitored with mem_access just as normal pages. The only part that may be tricky is if you map the page into your monitoring application while the page is shared. Your handle will continue to be valid even if the page is unshared but it will continue to point to the shared page. However, even if you catch write access events to the shared page that will lead to unsharing, the mem_access notification is sent before unsharing. I just usually do unsharing myself in the mem_access callback manually for monitored pages for this reason. I might change the flow in 4.8 to send the notification after the unsharing happened to simplify this.

Tamas

Thanks, but in mem_access , what APIs can be used to see such events ?

Should I mark the shared pages as rx only ?

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

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