[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH] Add an ioctl interface for simple xenstore access
On 18 Mar 2006, at 18:02, Anthony Liguori wrote:
We had discussed this in a previous thread and I thought you were okay
with this approach. The /proc/xen/xenbus interface requires full
parsing of the XenBus protocol. This requires libxenstore in domU.
Today, libxenstore is shipped with the rest of the tools package on
most distros. If one wants to write a Xen-aware application for a
domU, that brings in a pretty large number of unnecessary
dependencies. Also, for 32 bit management apps in a 64 bit
environment, it makes things very nasty (should we build a 32 bit and
64 bit version of libxenstore? Is the protocol 32/64 bit safe?).
Ideally, an app could just use a simple interface to /proc/xen/xenbus
to access XenStore. That solves all of the above problems elegantly.
An ioctl() interface seemed like the most obvious approach that
wouldn't break existing apps. Of course, any suggestion for a better
interface would be appreciated.
Either way you're going to have an abstraction layer in your apps that
hides the grotty details of how you access xenstore via
/proc/xen/xenbus, whether it's via the read/write interface or via
ioctls. That given, why not just statically link with libxenstore, or
even include xs.h, xs.c and xs_lib.c in your applications? They're
small, so no significant bloat, and LGPL, so no fear of GPL bleed into
your management apps.
The protocol is 32/64-bit safe.
Xen-devel mailing list