From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Vrabel Subject: Re: Removing the PVH assert in arch/x86/hvm/io.c:87 Date: Fri, 5 Dec 2014 11:24:26 +0000 Message-ID: <548195EA.5050101@citrix.com> References: <54808D6F.302@citrix.com> <548185DF020000780004D076@mail.emea.novell.com> <54819200.3010601@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: quoted-printable Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1Xwqzu-00044D-Jq for xen-devel@lists.xenproject.org; Fri, 05 Dec 2014 11:24:30 +0000 In-Reply-To: <54819200.3010601@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: =?windows-1252?Q?Roger_Pau_Monn=E9?= , Jan Beulich Cc: xen-devel@lists.xenproject.org, Tim Deegan List-Id: xen-devel@lists.xenproject.org On 05/12/14 11:07, Roger Pau Monn=E9 wrote: > El 05/12/14 a les 10.15, Jan Beulich ha escrit: >>>>> On 04.12.14 at 17:35, wrote: >>> I've just stumbled upon this assert while testing PVH on different >>> hardware. It was added in 7c4870 as a safe belt, but it turns out INS >>> and OUTS go through handle_mmio. So using this instructions from a PVH >>> guest basically kills Xen. >>> >>> I've removed it and everything seems fine, so I'm considering sending a >>> patch for 4.5 in order to have it removed. I think the path that could >>> trigger the crash because of the missing vioapic stuff is already >>> guarded by the other chunk added in the same patch. >> >> Iirc we settled on forbidding paths to handle_mmio() for PVH (hence >> the ASSERT()). Sadly you provide way too little detail on what is >> actually happening in your case: What's the use case of to-be- >> emulated INS/OUTS in a PVH kernel? > = > In this specific situation I'm seeing intsw instructions executed by the > FreeBSD ATA layer: > = > http://fxr.watson.org/fxr/source/dev/ata/ata-lowlevel.c#L740 Why are you running this device driver at all in a PVH guest? It should only be using PV block devices. David