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


[Xen-devel] Re: [PATCH] ocaml: xc bindings: use libxenctrl and libxengue

To: Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx>
Subject: [Xen-devel] Re: [PATCH] ocaml: xc bindings: use libxenctrl and libxenguest
From: Vincent Hanquez <vincent.hanquez@xxxxxxxxxxxxx>
Date: Fri, 10 Sep 2010 16:23:54 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Fri, 10 Sep 2010 08:24:29 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <c2610f86abfb2c34a5a6.1284113454@xxxxxxxxxxxxxxxxxxxxxxxxx>
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: <c2610f86abfb2c34a5a6.1284113454@xxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20100805 Icedove/3.0.6
On 10/09/10 11:10, Ian Campbell wrote:
# HG changeset patch
# User Ian Campbell<ian.campbell@xxxxxxxxxx>
# Date 1284113402 -3600
# Node ID c2610f86abfb2c34a5a653dea29d5518fb355628
# Parent  8a710e0eb0881cad6156500bd4cedcebc7824a18
ocaml: xc bindings: use libxenctrl and libxenguest

Now that tools/libxc is licensed under LGPL I don't think there is any
need for an LGPL reimplementation under tools/ocaml.

For the most part the conversion to the up-to-date libxc API (xc_lib.c
essentially implemented the same interface as an older libxc) was
pretty automatic. There are some functions which appear to no longer
exist in libxc which I therefore simply removed the bindings for and a
small number of interfaces which had changed.

Many of the functions bound by the stubs have no in-tree users (which
I think is fine for a language binding) so I have no way to confirm
correctness other than by eye. I was however able to confirm that
oxenstored still worked.
I can't say, i'm particularly thrilled by this patch.

on one hand, it renders oxenstored runnable on netbsd for example and merge libxc into one.
on the other hand, it's a pretty big change and done only "one-sidedly":

- lose the logging improvement over libxenctrl version.
- some bindings get lost, need to adapt all clients.
- introduce pthread functions in the ocaml stack, which as discussed in the past, might be a dealkiller, but unfortunately very hard to test.
- almost completely not tested patch.

oxenstored won't be affected much by all this, since it's using only a tiny part of xc, but i suspect it might be a big deal for XCP and such, and thus i wonder if XCP is going to use this version of xc (which was the goal when merging those libraries alongside oxenstored). it would probably be easier to test this in XCP first, since there's a comprehensive test suite there.


Xen-devel mailing list