From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Vrabel Subject: Re: Xen 4.1 + Linux compiled with PVH == BOOM Date: Tue, 24 Dec 2013 13:05:10 +0000 Message-ID: <52B98686.9060009@cantab.net> References: <20131220175735.GA619@phenom.dumpdata.com> <52B97E95.9060900@cantab.net> <52B98447.9080404@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <52B98447.9080404@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: Andrew Cooper , Konrad Rzeszutek Wilk , xen-devel@lists.xensource.com, Mukesh Rathor , JBeulich@suse.com List-Id: xen-devel@lists.xenproject.org On 24/12/2013 12:55, Andrew Cooper wrote: > On 24/12/2013 12:31, David Vrabel wrote: >> On 20/12/2013 17:57, Konrad Rzeszutek Wilk wrote: >>> Hey, >>> >>> This is with Linux and >>> >>> git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/pvh.v11 >>> >>> I get Xen 4.1 (only) hypervisor to blow up with a Linux kernel that has been >>> compiled with PVH. >>> >>> I think the same problem would show up if I tried to launch a PV guest >>> compiled as PVH under Xen 4.1 as well - as the ELF parsing code is shared >>> with the toolstack. >> If a kernel with both PVH and PV support enabled cannot boot in PV mode >> with a non-PVH aware hypervisor/toolstack then the kernel is broken. >> >> Hypervisor/tool-side fixes aren't the correct fix here. Xen 4.1 and >> even older are still widely deployed. >> >> David > > I believe that the problem is because the elf parsing code is not > sufficiently forward-compatible aware, and rejects the PVH kernel > because it has an unrecognised Xen elf note field. This is not a kernel > bug. > > The elf parsing should accept unrecognised fields for forward > compatibility, which would then allow a PV & PVH compiled kernel to run > in PV mode. It should but it doesn't, so a different way needs to be found for the kernel to report (optional) PVH support. A method that is compatible with older toolstacks. David