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] [PATCH] linux: xenbus_be currently doesn't build properl

To: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] linux: xenbus_be currently doesn't build properly as a module
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Thu, 20 Apr 2006 14:08:28 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 20 Apr 2006 06:08:50 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <44479695.76E4.0078.0@xxxxxxxxxx>
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <44479695.76E4.0078.0@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx

On 20 Apr 2006, at 13:11, Jan Beulich wrote:

It depends on the non-exported symbols vmlist and vmlist_lock. As exporting these doesn't seem reasonable, the patch
disables the ability to build this as a module for now.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>

A better fix is for xenbus_map_ring_valloc() to have the prototype:
struct vm_struct *xenbus_map_ring_valloc(struct xenbus_device *, int);

It then returns the vmarea that is allocated, or ERR_PTR() on error.

Then xenbus_unmap_ring_vfree() takes the vmarea rather than vaddr and we avoid the nasty vmlist scan that cannot be modularised.

There's only one user of these functions right now, so the patch for this proper fix won't be very big.

 -- Keir

Xen-devel mailing list