From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dulloor Subject: Re: [PATCH 00/10][RFC][v2] merge ocaml xenstored and dependencies Date: Fri, 23 Apr 2010 12:04:57 -0400 Message-ID: References: <1272033113-23829-1-git-send-email-vincent.hanquez@eu.citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <1272033113-23829-1-git-send-email-vincent.hanquez@eu.citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Vincent Hanquez Cc: xen-devel List-Id: xen-devel@lists.xenproject.org If there are any features and/or additions to XenStore protocol in the Ocaml version, is there a plan to do it in the C version too ? -dulloor On Fri, Apr 23, 2010 at 10:31 AM, Vincent Hanquez wrote: > Add ocaml xenstored into xen as an alternative to C xenstored. > The goal is to choose it as the default xenstored on the target machine w= hen it has > been built. > > build hook mechanism is not ideal, but should be safe for platform that > cannot build ocaml and/or would have some portability issues. > > This is RFC, although the first 5 patches are completly safe since they j= ust > introduce new files and hook with default =3Dn the new files. only the 6t= h patch > make the default to build ocaml tools with fallback if not available. > > since v1: > * rebased to latest xen-unstable > * remove stdext ocaml library and folded dependencies into xenstored > * split dependencies in smaller patches > > Vincent Hanquez (10): > =A0add ocaml mmap bindings implementation. > =A0add ocaml XC bindings. > =A0add XS ocaml bindings. > =A0add uuid ocaml bindings > =A0add logs ocaml bindings > =A0add ocaml xenstored > =A0add compilation makefile to ocaml directory > =A0remove hook from external ocaml repository > =A0add ocaml tools to build if defined. default to n > =A0default ocaml tools config variable to y > > =A0Config.mk =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0| =A0 15 +- > =A0tools/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0= | =A0 23 +- > =A0tools/ocaml/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0= 36 + > =A0tools/ocaml/Makefile.rules =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 93 ++ > =A0tools/ocaml/common.make =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 2= 8 + > =A0tools/ocaml/libs/eventchn/META.in =A0 =A0 =A0 =A0 =A0| =A0 =A04 + > =A0tools/ocaml/libs/eventchn/Makefile =A0 =A0 =A0 =A0 | =A0 28 + > =A0tools/ocaml/libs/eventchn/eventchn.ml =A0 =A0 =A0| =A0 27 + > =A0tools/ocaml/libs/eventchn/eventchn.mli =A0 =A0 | =A0 26 + > =A0tools/ocaml/libs/eventchn/eventchn_stubs.c | =A0173 ++++ > =A0tools/ocaml/libs/log/META.in =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 =A04 + > =A0tools/ocaml/libs/log/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 41 + > =A0tools/ocaml/libs/log/log.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0258 ++= +++ > =A0tools/ocaml/libs/log/log.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 55 + > =A0tools/ocaml/libs/log/logs.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0197 ++++ > =A0tools/ocaml/libs/log/logs.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 46 + > =A0tools/ocaml/libs/log/syslog.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0 26 + > =A0tools/ocaml/libs/log/syslog.mli =A0 =A0 =A0 =A0 =A0 =A0| =A0 41 + > =A0tools/ocaml/libs/log/syslog_stubs.c =A0 =A0 =A0 =A0| =A0 73 ++ > =A0tools/ocaml/libs/mmap/META.in =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A04 + > =A0tools/ocaml/libs/mmap/Makefile =A0 =A0 =A0 =A0 =A0 =A0 | =A0 27 + > =A0tools/ocaml/libs/mmap/mmap.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 31 + > =A0tools/ocaml/libs/mmap/mmap.mli =A0 =A0 =A0 =A0 =A0 =A0 | =A0 28 + > =A0tools/ocaml/libs/mmap/mmap_stubs.c =A0 =A0 =A0 =A0 | =A0136 +++ > =A0tools/ocaml/libs/mmap/mmap_stubs.h =A0 =A0 =A0 =A0 | =A0 33 + > =A0tools/ocaml/libs/uuid/META.in =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A04 + > =A0tools/ocaml/libs/uuid/Makefile =A0 =A0 =A0 =A0 =A0 =A0 | =A0 26 + > =A0tools/ocaml/libs/uuid/uuid.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 88 ++ > =A0tools/ocaml/libs/uuid/uuid.mli =A0 =A0 =A0 =A0 =A0 =A0 | =A0 53 + > =A0tools/ocaml/libs/xb/META.in =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A04 = + > =A0tools/ocaml/libs/xb/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 41 + > =A0tools/ocaml/libs/xb/op.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 84 = ++ > =A0tools/ocaml/libs/xb/packet.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 50 + > =A0tools/ocaml/libs/xb/partial.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0 44 + > =A0tools/ocaml/libs/xb/xb.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0189 = ++++ > =A0tools/ocaml/libs/xb/xb.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 83 ++ > =A0tools/ocaml/libs/xb/xb_stubs.c =A0 =A0 =A0 =A0 =A0 =A0 | =A0 74 ++ > =A0tools/ocaml/libs/xb/xs_ring.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0 18 + > =A0tools/ocaml/libs/xb/xs_ring_stubs.c =A0 =A0 =A0 =A0| =A0117 +++ > =A0tools/ocaml/libs/xc/META.in =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A04 = + > =A0tools/ocaml/libs/xc/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 28 + > =A0tools/ocaml/libs/xc/xc.h =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0191 = ++++ > =A0tools/ocaml/libs/xc/xc.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0340 = +++++++ > =A0tools/ocaml/libs/xc/xc.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0196 ++= ++ > =A0tools/ocaml/libs/xc/xc_cpufeature.h =A0 =A0 =A0 =A0| =A0116 +++ > =A0tools/ocaml/libs/xc/xc_cpuid.h =A0 =A0 =A0 =A0 =A0 =A0 | =A0285 ++++++ > =A0tools/ocaml/libs/xc/xc_e820.h =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 20 + > =A0tools/ocaml/libs/xc/xc_lib.c =A0 =A0 =A0 =A0 =A0 =A0 =A0 | 1502 ++++++= ++++++++++++++++++++++ > =A0tools/ocaml/libs/xc/xc_stubs.c =A0 =A0 =A0 =A0 =A0 =A0 | 1170 ++++++++= ++++++++++++++ > =A0tools/ocaml/libs/xs/META.in =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A04 = + > =A0tools/ocaml/libs/xs/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 42 + > =A0tools/ocaml/libs/xs/queueop.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0 73 ++ > =A0tools/ocaml/libs/xs/xs.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0170 = ++++ > =A0tools/ocaml/libs/xs/xs.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 90 ++ > =A0tools/ocaml/libs/xs/xsraw.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0265 ++++= + > =A0tools/ocaml/libs/xs/xsraw.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 60 ++ > =A0tools/ocaml/libs/xs/xst.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 61 ++ > =A0tools/ocaml/libs/xs/xst.mli =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 30 + > =A0tools/ocaml/xenstored/Makefile =A0 =A0 =A0 =A0 =A0 =A0 | =A0 54 + > =A0tools/ocaml/xenstored/config.ml =A0 =A0 =A0 =A0 =A0 =A0| =A0112 ++ > =A0tools/ocaml/xenstored/connection.ml =A0 =A0 =A0 =A0| =A0234 +++++ > =A0tools/ocaml/xenstored/connections.ml =A0 =A0 =A0 | =A0167 +++ > =A0tools/ocaml/xenstored/define.ml =A0 =A0 =A0 =A0 =A0 =A0| =A0 40 + > =A0tools/ocaml/xenstored/disk.ml =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0157 +++ > =A0tools/ocaml/xenstored/domain.ml =A0 =A0 =A0 =A0 =A0 =A0| =A0 62 ++ > =A0tools/ocaml/xenstored/domains.ml =A0 =A0 =A0 =A0 =A0 | =A0 84 ++ > =A0tools/ocaml/xenstored/event.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0 29 + > =A0tools/ocaml/xenstored/logging.ml =A0 =A0 =A0 =A0 =A0 | =A0239 +++++ > =A0tools/ocaml/xenstored/parse_arg.ml =A0 =A0 =A0 =A0 | =A0 68 ++ > =A0tools/ocaml/xenstored/perms.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0167 +++ > =A0tools/ocaml/xenstored/process.ml =A0 =A0 =A0 =A0 =A0 | =A0396 ++++++++ > =A0tools/ocaml/xenstored/quota.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0 83 ++ > =A0tools/ocaml/xenstored/store.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0461 ++++++= +++ > =A0tools/ocaml/xenstored/symbol.ml =A0 =A0 =A0 =A0 =A0 =A0| =A0 76 ++ > =A0tools/ocaml/xenstored/symbol.mli =A0 =A0 =A0 =A0 =A0 | =A0 52 + > =A0tools/ocaml/xenstored/transaction.ml =A0 =A0 =A0 | =A0198 ++++ > =A0tools/ocaml/xenstored/utils.ml =A0 =A0 =A0 =A0 =A0 =A0 | =A0107 ++ > =A0tools/ocaml/xenstored/xenstored.conf =A0 =A0 =A0 | =A0 30 + > =A0tools/ocaml/xenstored/xenstored.ml =A0 =A0 =A0 =A0 | =A0404 ++++++++ > =A0tools/xenstore/Makefile =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 = =A05 - > =A080 files changed, 10168 insertions(+), 32 deletions(-) > =A0create mode 100644 tools/ocaml/Makefile > =A0create mode 100644 tools/ocaml/Makefile.rules > =A0create mode 100644 tools/ocaml/common.make > =A0create mode 100644 tools/ocaml/libs/eventchn/META.in > =A0create mode 100644 tools/ocaml/libs/eventchn/Makefile > =A0create mode 100644 tools/ocaml/libs/eventchn/eventchn.ml > =A0create mode 100644 tools/ocaml/libs/eventchn/eventchn.mli > =A0create mode 100644 tools/ocaml/libs/eventchn/eventchn_stubs.c > =A0create mode 100644 tools/ocaml/libs/log/META.in > =A0create mode 100644 tools/ocaml/libs/log/Makefile > =A0create mode 100644 tools/ocaml/libs/log/log.ml > =A0create mode 100644 tools/ocaml/libs/log/log.mli > =A0create mode 100644 tools/ocaml/libs/log/logs.ml > =A0create mode 100644 tools/ocaml/libs/log/logs.mli > =A0create mode 100644 tools/ocaml/libs/log/syslog.ml > =A0create mode 100644 tools/ocaml/libs/log/syslog.mli > =A0create mode 100644 tools/ocaml/libs/log/syslog_stubs.c > =A0create mode 100644 tools/ocaml/libs/mmap/META.in > =A0create mode 100644 tools/ocaml/libs/mmap/Makefile > =A0create mode 100644 tools/ocaml/libs/mmap/mmap.ml > =A0create mode 100644 tools/ocaml/libs/mmap/mmap.mli > =A0create mode 100644 tools/ocaml/libs/mmap/mmap_stubs.c > =A0create mode 100644 tools/ocaml/libs/mmap/mmap_stubs.h > =A0create mode 100644 tools/ocaml/libs/uuid/META.in > =A0create mode 100644 tools/ocaml/libs/uuid/Makefile > =A0create mode 100644 tools/ocaml/libs/uuid/uuid.ml > =A0create mode 100644 tools/ocaml/libs/uuid/uuid.mli > =A0create mode 100644 tools/ocaml/libs/xb/META.in > =A0create mode 100644 tools/ocaml/libs/xb/Makefile > =A0create mode 100644 tools/ocaml/libs/xb/op.ml > =A0create mode 100644 tools/ocaml/libs/xb/packet.ml > =A0create mode 100644 tools/ocaml/libs/xb/partial.ml > =A0create mode 100644 tools/ocaml/libs/xb/xb.ml > =A0create mode 100644 tools/ocaml/libs/xb/xb.mli > =A0create mode 100644 tools/ocaml/libs/xb/xb_stubs.c > =A0create mode 100644 tools/ocaml/libs/xb/xs_ring.ml > =A0create mode 100644 tools/ocaml/libs/xb/xs_ring_stubs.c > =A0create mode 100644 tools/ocaml/libs/xc/META.in > =A0create mode 100644 tools/ocaml/libs/xc/Makefile > =A0create mode 100644 tools/ocaml/libs/xc/xc.h > =A0create mode 100644 tools/ocaml/libs/xc/xc.ml > =A0create mode 100644 tools/ocaml/libs/xc/xc.mli > =A0create mode 100644 tools/ocaml/libs/xc/xc_cpufeature.h > =A0create mode 100644 tools/ocaml/libs/xc/xc_cpuid.h > =A0create mode 100644 tools/ocaml/libs/xc/xc_e820.h > =A0create mode 100644 tools/ocaml/libs/xc/xc_lib.c > =A0create mode 100644 tools/ocaml/libs/xc/xc_stubs.c > =A0create mode 100644 tools/ocaml/libs/xs/META.in > =A0create mode 100644 tools/ocaml/libs/xs/Makefile > =A0create mode 100644 tools/ocaml/libs/xs/queueop.ml > =A0create mode 100644 tools/ocaml/libs/xs/xs.ml > =A0create mode 100644 tools/ocaml/libs/xs/xs.mli > =A0create mode 100644 tools/ocaml/libs/xs/xsraw.ml > =A0create mode 100644 tools/ocaml/libs/xs/xsraw.mli > =A0create mode 100644 tools/ocaml/libs/xs/xst.ml > =A0create mode 100644 tools/ocaml/libs/xs/xst.mli > =A0create mode 100644 tools/ocaml/xenstored/Makefile > =A0create mode 100644 tools/ocaml/xenstored/config.ml > =A0create mode 100644 tools/ocaml/xenstored/connection.ml > =A0create mode 100644 tools/ocaml/xenstored/connections.ml > =A0create mode 100644 tools/ocaml/xenstored/define.ml > =A0create mode 100644 tools/ocaml/xenstored/disk.ml > =A0create mode 100644 tools/ocaml/xenstored/domain.ml > =A0create mode 100644 tools/ocaml/xenstored/domains.ml > =A0create mode 100644 tools/ocaml/xenstored/event.ml > =A0create mode 100644 tools/ocaml/xenstored/logging.ml > =A0create mode 100644 tools/ocaml/xenstored/parse_arg.ml > =A0create mode 100644 tools/ocaml/xenstored/perms.ml > =A0create mode 100644 tools/ocaml/xenstored/process.ml > =A0create mode 100644 tools/ocaml/xenstored/quota.ml > =A0create mode 100644 tools/ocaml/xenstored/store.ml > =A0create mode 100644 tools/ocaml/xenstored/symbol.ml > =A0create mode 100644 tools/ocaml/xenstored/symbol.mli > =A0create mode 100644 tools/ocaml/xenstored/transaction.ml > =A0create mode 100644 tools/ocaml/xenstored/utils.ml > =A0create mode 100644 tools/ocaml/xenstored/xenstored.conf > =A0create mode 100644 tools/ocaml/xenstored/xenstored.ml > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > >