All of lore.kernel.org
 help / color / mirror / Atom feed
* Logging External Page Writes for a Given Domain
@ 2006-02-19  7:31 Scott Baker
  2006-02-20  5:46 ` Anthony Liguori
  0 siblings, 1 reply; 7+ messages in thread
From: Scott Baker @ 2006-02-19  7:31 UTC (permalink / raw)
  To: xen-devel

Hello, all:

I'm new to Xen developing, and am hoping that you experts can help me 
out here (or at least point me in the right direction).

My team's goal is to be able to log all writes that are made to any 
memory page of a certain domain, except those writes that the domain 
itself makes.  That is to say, if Domain 2 is the domain we want to log 
page writes for (where logging is capturing what was written and its 
location), then we want to be able to log all the writes made by any 
domain /except/ Domain 2 -- i.e., writes made to shared pages that 
belong to Domain 2.

Ideally, we would like to be able to have these writes for domain /x/ 
detected and trap to a process running on Domain 0, with minimal VMM 
modification.  Preferably, the method used would only cause significant 
overhead when a write is made from outside domain /x/ (rather than for 
every write /x/ and everyone else makes), but I'm not picky about 
efficiency at the moment.

The rough idea we have at this point is to make the monitor process on 
Domain 0 mark all the pages of Domain /x/ as read-only (while 
remembering which are actually read-only).  Then, when a write-fault 
occurred, the VMM would pass it on to the monitoring process, which 
would then let Domain /x/ finish the write, the monitor would record 
what was written, and let everything continue as normal.

Unfortunately, I'm not sure how that vague sketch fits into Xen.  For 
the page table read-only flag setting, would we use the 
update_va_mapping() hypercall?  And, how would the monitoring process 
let Domain /x/ finish the write and then get control back?  (Or, does 
the VMM know what is about to be written, so we could just pass that to 
the monitoring process?)  Finally, where in Xen's code would we have to 
go to modify the fault-handling behavior so the callback could be made?

Hope I'm clear, and hope you can help a newbie!

Thanks,
Scott

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2006-02-28  0:17 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-02-19  7:31 Logging External Page Writes for a Given Domain Scott Baker
2006-02-20  5:46 ` Anthony Liguori
2006-02-21 20:13   ` Scott Baker
2006-02-21 20:17     ` Anthony Liguori
2006-02-21 20:40       ` Scott Baker
2006-02-28  0:09       ` Scott Baker
2006-02-28  0:17         ` Anthony Liguori

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.