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

[Xen-devel] xen: generic instruction re-execution mechanism for execute faults

  • To: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • From: Mihai DonÈu <mdontu@xxxxxxxxxxxxxxx>
  • Date: Tue, 9 Sep 2014 06:01:11 +0300
  • Cc: Andrei LUTAS <vlutas@xxxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx, keir@xxxxxxx, jbeulich@xxxxxxxx
  • Comment: DomainKeys? See http://domainkeys.sourceforge.net/
  • Delivery-date: Tue, 09 Sep 2014 03:01:43 +0000
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=bitdefender.com; b=zb3wIG+ZeLRhQeyGC5pF/roQxcPLP2vsf9Xc5ns9F8nZ4FgRGPPL5gT/Ch/wEgu3U/ptVQZ/6tMM3v0cy8MZDKn40UxiMlYF/+I/U2kvzBj6bEL+ommvadb9hpWSb/u1BY8SblH3kjg8MrsJ+U8O+mAQvGx5wazBHiFEQZWGbs7V38aFc9g74psjNNEJezi5/g9crp/f7WivmnSJBQqb6NK7i6ppAoePS3ZtB+2iCiopVeShFzgHSLlwYEh0sBMQDBHJx3XyBjzv9BgV7zTS6deLuHV3Ie9vm4aodAIt3zeYxvA1UJKbMVdXsvuogOhTt2grZ/CDUWqTTQotOjxMcQ==; h=Received:Received:Received:Received:Received:Date:From:To:Cc:Subject:Message-ID:Organization:MIME-Version:Content-Type:Content-Transfer-Encoding:X-BitDefender-Scanner:X-BitDefender-Spam:X-BitDefender-SpamStamp:X-BitDefender-CF-Stamp;
  • List-id: Xen developer discussion <xen-devel.lists.xen.org>


This is another patch from which we stepped back for a while in order
to give it a better thought:


Our argument for it is that memory introspection technologies can cause
a VMEXIT practically at any point during the guest execution, even
without any 'malicious' activity going on in it. If the instruction
that caused the exit is well within a protected page, we would need to:

  a) emulate it
  b) single step it

The emulation part would be the desired option, but unfortunately it
requires a full blown emulator which I believe is beyond the scope of
Xen. One would rather have to somehow tap into qemu (if at all

The other option, which is permanent in that it does not need to be
maintained like an emulator, is to suspend all vCPU's, grant
permissions to the fault page, single step the guest, return to Xen and
then resume. It has a bit of overhead, but the fact that this code path
is seldom taken and cumulated with the efficiency of latest hardware
makes it the better choice. Also, the tests we have conducted show no
observable slowdown.

In conclusion: is there any way we can bring this idea (either in the
proposed form by the patch or any other) into Xen?


Mihai DonÈu

Xen-devel mailing list



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