From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH xen-4.6] xen: Remove CONFIG_X86_SUPERVISOR_MODE_KERNEL as x86_32 builds are unsupported Date: Mon, 5 Jan 2015 16:07:43 +0000 Message-ID: <54AAB6CF.7070404@citrix.com> References: <1420225943-20530-1-git-send-email-andrew.cooper3@citrix.com> <1420470993.28863.31.camel@citrix.com> <54AAAF3F.7020706@citrix.com> <1420472473.28863.39.camel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1420472473.28863.39.camel@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell Cc: Stefano Stabellini , Tim Deegan , Keir Fraser , Jan Beulich , Xen-devel List-Id: xen-devel@lists.xenproject.org On 05/01/15 15:41, Ian Campbell wrote: > On Mon, 2015-01-05 at 15:35 +0000, Andrew Cooper wrote: >> Answering out-of-order >> >> This patch has no functional change WRT PVH. The hunk commented on is >> simply changed via indentation due to the removal of the conditional it >> is in. It was never been possible for a PVH kernel boot with >> "!XENFEAT_supervisor_mode_kernel" in its feature string. > Oh, good! > >> If retcon'ing this feature flag is acceptable then the problem goes >> away, as can the commented hunk. However, given the meaning of the >> flag, it really should be advertised to plain HVM guests as well, >> because their kernel does run in ring0. At that point, it becomes more >> of a general "running in an hvm container" flag. > Conversely one could argue that it is a PV* only feature which makes no > sense to an HVM guest (which I think is approximately what it means now) This is going to cause problems with the effort to unify PVH and HVM into a single guest type, which is why I raised the point. The Linux PVH code is already using it as a PVH vs non-PVH flag. Either way - these are not problems which need fixing right now, but do need to be considered as the unification work progresses. > >> What usecase was supervisor_mode_kernel developed for? It seems >> counter-intuitive, but I can't find anything in the history explaining >> its use. > It was a prototype from the pre-pvops days to see if it would be > feasible to have a single kernel binary which ran either on Xen or on a > stub hypervisor which ran it "as native" with little or no loss of > performance^TM (e.g. for distro's convenience to avoid the multiple > kernel issue). > > It never went beyond a prototype with Xen proper instead of the proposed > stub hypervisor and then pvops came along and was a much more sensible > idea... Considering the implications of running dom0 in ring0, pvops seems like a much more sensible idea. ~Andrew