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

[Xen-devel] [RFC] x86: PV SMAP for 64-bit guests


  • To: "xen-devel" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: "Jan Beulich" <JBeulich@xxxxxxxx>
  • Date: Wed, 29 Jan 2014 15:33:28 +0000
  • Delivery-date: Wed, 29 Jan 2014 15:34:05 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xen.org>

Considering that SMAP (and SMEP) aren't usable for 64-bit PV guests
(due to them running in ring 3), I drafted a mostly equivalent PV
solution, at this point mainly to see what people think how useful this
would be.

It being based on switching page tables (along with the two page
tables we have right now - one containing user mappings only, the
other containing both kernel and user mappings - a third category
gets added containing kernel mappings only; Linux would have such
a thing readily available and hence presumably would require not
too intrusive changes) of course makes clear that this would come
with quite a bit of a performance cost. Furthermore the state
management obviously requires a couple of extra instructions to be
added into reasonably hot hypervisor code paths.

Hence before going further with this approach (for now I only got
it to the point that an un-patched Linux is unaffected, i.e. I didn't
code up the Linux side yet) I would be interested to hear people's
opinions on whether the performance cost is worth it, or whether
instead we should consider PVH the one and only route towards
gaining that extra level of security.

And if considering it worthwhile, comments on the actual
implementation (including the notes at the top of the attached
patch) would of course be welcome too.

Jan

Attachment: x86-PV-64bit-SMAP.patch
Description: Text document

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

 


Rackspace

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