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

[Xen-devel] PV Autotranslate guests (are they used at all?)



Hello,

While digging around, it looks like there is some major bitrot of the PV
autotranslate code.

When constructing an autotranslate domain, tools/libxc/xc_dom_x86.c:
x86_shadow() sets refcount | translate on the domain.

The combination of translate != external was excluded by c/s
92942fd3d469, which means that PV autotranslate guests can't boot on Xen
4.7 or later.

The shadow emulation code for PV guests (which gets used one way or
another if any of refcount|translate|external are set) always sets up
emulation in the same mode as Xen's %cs.  It appears to have had this
behaviour since its introduction in c/s 1daf5e293b, and presumably means
that noone has tried running a 32bit autotranslate guest on 64bit Xen in
anger.

Does anyone use PV autotranslate guests at all?  I don't believe I have
never come across one.

The current shadow code excludes the translate without refcounts case,
but the converse case (refcounts without translate) doesn't make sense. 
Without Xen performing translation, there are no shadow tables to
reference count in the first place.

This means that the only sensible shadow mode is refcount | translate |
external, which allows PV emulation code in arch/x86/mm/shadow/ to be
dropped, as PV guests necessarily can't be external.  Doing so however
would definitely be the end of autotranslate mode.

Given that it hasn't booted on the past two releases of Xen, and doesn't
appear to have ever worked in one common case, does anyone have any
objection if I remove all vestigial pieces and permanently lay the
feature to rest in SCM history?

~Andrew

_______________________________________________
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®.