This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Re: How to intercept interrupts from guest domains

To: Mads Bergdal <mbergdal@xxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Re: How to intercept interrupts from guest domains
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Tue, 19 Sep 2006 11:01:31 +0100
Delivery-date: Tue, 19 Sep 2006 03:00:19 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <eeoelb$qec$1@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acbb0pSj0zSu70fFEduLAQAX8io7RQ==
Thread-topic: [Xen-devel] Re: How to intercept interrupts from guest domains
User-agent: Microsoft-Entourage/
On 19/9/06 10:52, "Mads Bergdal" <mbergdal@xxxxxxxxx> wrote:

>>> I am writing my master thesis on virtualization with Xen. I am trying to
>>>     intercept the hypercalls coming from the guest domains. More
>>> specific I am trying to determine where in memory a guest domain is
>>> writing. Does anyone have a hint on where in the code I should try to do
>>> this?
>> If you want to know where a guest is writing you need to do more than
>> intercept hypercalls. You want to intercept memory accesses to, which would
>> liekly mean you need to run on shadow pagetables and manipulate access
>> permissions to trap on first access to a page.
>>  -- Keir
> Yes, that sounds reasonable. Do you know where in the code this could be
> achieved?

What's the intended purpose? You could perhaps look at the log-dirty shadow
mode. This is used to track which pages have been modified by the guest -- a
page which the guest maps writeable is not made writable in the shadow page
tables until the time of the first write access (when that page is added to
a 'dirty log' for further processing).

Be warned that modifying the shadow code is rather more difficult than a
project that would simply involve adding a hook point to every hypercall!

 -- Keir

Xen-devel mailing list