[libvirt] [PATCH 1/1] [RFC] Parallels Server Bare Metal driver stub

Daniel Veillard veillard at redhat.com
Wed Sep 28 13:34:47 UTC 2011


On Mon, Sep 26, 2011 at 03:59:05PM +0400, Dmitry Mishin wrote:
> Parallels Server Bare Metal is a virtualization solution which allows to run
> both Containers (OpenVZ-like) and virtual machines (like any other hardware
> hypervisor).
> 
> This patch implements initial driver stub with almost no functionality except an
> ability to open and close driver. At the same time it contains initialization of
> Parallels API and clearly demonstrates supposed approach to future driver
> implementation. In particular, I suppose to use parallels-virtualization-sdk
> library provisioned with the PSBM distribution (and separately also) for PSBM's
> virtual servers management.
> 
> Signed-off-by: Dmitry Mishin <dim at parallels.com>
[...]
> diff --git a/src/psbm/psbm_api.c b/src/psbm/psbm_api.c
> new file mode 100644
> index 0000000..b5a89f1
> --- /dev/null
> +++ b/src/psbm/psbm_api.c
> @@ -0,0 +1,117 @@
> +/*
> + * psbm_api.c: core driver methods for managing PSBM virtual servers
> + *
> + * Copyright (C) 2011 Parallels, Inc.
> + *
> + * This library is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU Lesser General Public
> + * License as published by the Free Software Foundation; either
> + * version 2.1 of the License, or (at your option) any later version.
> + *
> + * This library is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * Lesser General Public License for more details.
> + *
> + * You should have received a copy of the GNU Lesser General Public
> + * License along with this library; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
> + *
> + * Authors:
> + * Dmitry Mishin <dim at parallels.com>
> + *
> + */

  Copyrights and licencing terms looks okay :)


> +int psbmApiInit(struct psbm_driver *driver)
> +{
> +    const char *libname = "libprl_sdk.so";
> +    void *handle = NULL;
> +    PRL_RESULT res;

  That I dislike, sorry this must not be dlopen'ed in at runtime,
but checked in at configure time and properly linked in. Also
means that proper dependancies and packaging have to be in place.

> +    handle = dlopen(libname, RTLD_LAZY);
> +    if (!handle) {
> +        psbmError(VIR_ERR_INTERNAL_ERROR,
> +                  _("Failed to load SDK library %s %s"), libname, dlerror());
> +        return VIR_ERR_INTERNAL_ERROR;
> +    }

  So what is that SDK library, how is it distributed and what is the
licencing for it ? As much as I like adding a driver, I would like to
make sure the deployement is clean and there is no licencing issues.

  Any pointers ? All I found was
  http://www.parallels.com/ptn/download/sdk/
and it's quite silent on code availability and Licence for the
libraries.

    thanks in advance !

Daniel

-- 
Daniel Veillard      | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
daniel at veillard.com  | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library  http://libvirt.org/




More information about the libvir-list mailing list