From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: Regression due to d9581c7dcac15c02ad4d47c60c60f4d8f197db55 en/fb: allow xenfb initialization for hvm guest Date: Tue, 3 Mar 2015 10:20:56 -0500 Message-ID: <20150303152056.GD30332@l.oracle.com> References: <20150227212427.GA9502@l.oracle.com> <54F43FB0.7010006@citrix.com> <20150302142501.GB3418@l.oracle.com> <54F475FA.5020008@citrix.com> <20150302220529.GA19801@l.oracle.com> <1425380100.24959.77.camel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1425380100.24959.77.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: xen-devel@lists.xensource.com, David Vrabel , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org > > > I am afraid that Xend is still widespread enough that we need some way to > > > deal with it. > > > > > > The #idef hackery - while not a nice way can make this work. > > > > > > Or we can add this in an header/function as a quirk. > > > > > > boolean xen_pvfb_dont_init_quirk(void) > > > { > > > #ifdef CONFIG_X86 > > > > I would be OK with having such a quirk without the ifdef (no xend has > > been known to work on ARM anyway). > > > > > > > if (xen_running_on_version_or_later(4, 5) && xen_hvm_domain()) > > > > Shouldn't this be xen_running_on_version_or_earlier(4, 4)? > > Xend has been removed in 4.5. > > This all sounds pretty gross, but if it is the way folks want to go, > shouldn't it try and determine that it is running on xend somehow > instead of guessing based on version number? 4.4 had xl in it too for > instance... Right, so the secondary check would be to see if there is something extra that Xend puts in the XenStore. And it looks to always put 'protocol' in every device: xm: 0 = "" protocol = "x86_32-abi" state = "1" backend-id = "0" backend = "/local/domain/0/backend/vfb/7/0" While xl: vfb = "" 0 = "" backend = "/local/domain/0/backend/vfb/1/0" backend-id = "0" state = "1"