From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752294AbdKHMDx (ORCPT ); Wed, 8 Nov 2017 07:03:53 -0500 Received: from mx1.redhat.com ([209.132.183.28]:42728 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751168AbdKHMDw (ORCPT ); Wed, 8 Nov 2017 07:03:52 -0500 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 6BA8BC04AC64 Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=pbonzini@redhat.com Subject: Re: [Xen-devel] [PATCH 3/3] x86/xen: use guest_late_init to detect Xen PVH guest To: Juergen Gross , Jan Beulich Cc: len.brown@intel.com, x86@kernel.org, tglx@linutronix.de, xen-devel@lists.xenproject.org, boris.ostrovsky@oracle.com, mingo@redhat.com, rkrcmar@redhat.com, rjw@rjwysocki.net, pavel@ucw.cz, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, hpa@zytor.com References: <20171108090739.26491-1-jgross@suse.com> <20171108090739.26491-4-jgross@suse.com> <5A02F633020000780018D26A@suse.com> From: Paolo Bonzini Message-ID: <256b90df-547e-3287-d13f-3ffb346b4bc2@redhat.com> Date: Wed, 8 Nov 2017 13:03:44 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Wed, 08 Nov 2017 12:03:52 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/11/2017 12:55, Juergen Gross wrote: > On 08/11/17 12:18, Jan Beulich wrote: >>>>> On 08.11.17 at 10:07, wrote: >>> In case we are booted via the default boot entry by a generic loader >>> like grub or OVMF it is necessary to distinguish between a HVM guest >>> with a device model supporting legacy devices and a PVH guest without >>> device model. >>> >>> PVH guests will always have x86_platform.legacy.no_vga set and >>> x86_platform.legacy.rtc cleared, while both won't be true for HVM >>> guests. >>> >>> Test for both conditions in the guest_late_init hook and set xen_pvh >>> to true if they are met. >> >> This sounds pretty fragile to me: I can't see a reason why a proper >> HVM guest couldn't come without VGA and RTC. That's not possible >> today, agreed, but certainly an option down the road if virtualization >> follows bare metal's road towards being legacy free. > > From guest's perspective: what is the difference between a legacy free > HVM domain and PVH? In the end the need for differentiating is to avoid > access to legacy features in PVH as those would require a device model. My understanding of Xen is very rusty at this point, but I think a "completely" legacy-free HVM domain will still have a PCI bus and the Xen platform device on that bus. A PVH domain just knows how to access the Xen PV features. Paolo