This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] __HYPERVISOR_COMPAT_VIRT_START for HVM guest with PV dri

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] __HYPERVISOR_COMPAT_VIRT_START for HVM guest with PV drivers
From: Chuck Anderson <chuck.anderson@xxxxxxxxxx>
Date: Thu, 20 Aug 2009 13:48:41 -0700
Delivery-date: Thu, 20 Aug 2009 13:49:26 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C6B3484C.12874%keir.fraser@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <C6B3484C.12874%keir.fraser@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (X11/20090608)
Signed-off-by: Chuck Anderson <chuck.anderson@xxxxxxxxxx>

I booted a 3.4.0 based hypervisor with changeset 20101 applied and verified that it resolved the problem.

Keir Fraser wrote:
On 20/08/2009 17:27, "Keir Fraser" <keir.fraser@xxxxxxxxxxxxx> wrote:

Do the guest virtual addresses passed by a hypervisor call on a 32-bit
HVM with PV drivers guest to a 64-bit hypervisor need to lie below
__HYPERVISOR_COMPAT_VIRT_START?  Both HVM and PVM domains have their
hv_compat_vstart set to __HYPERVISOR_COMPAT_VIRT_START.  The
hypervisor's compat layer is causing the balloon driver's
HYPERVISOR_memory_op(XENMEM_decrease_reservation, &reservation)
hypervisor call to error out in xen/common/compat/memory.c
compat_memory_op(), compat_handle_ok(), because the PVHVM guest's
extent_start lies above __HYPERVISOR_COMPAT_VIRT_START.  The following
patch appears to fix the problem but I want to make sure it is fixing
the real bug:
Yeah, you pretty much have it figured. I may just clean up for style (I
think an extra macro for this is a bit pointless), but the patch is
fundamentally good.

Take a look at xen-unstable.hg:20101

 -- Keir

Xen-devel mailing list
<Prev in Thread] Current Thread [Next in Thread>