From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Zeffertt Subject: Re: caml stubdom crashes Date: Fri, 03 Apr 2009 09:31:01 +0100 Message-ID: <49D5C945.7000202@eu.citrix.com> References: <49D4CDEA.4060308@eu.citrix.com> <49D4E640.6080603@cs.ubc.ca> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <49D4E640.6080603@cs.ubc.ca> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Patrick Colp Cc: "xen-devel@lists.xensource.com" , "George S. Coker, II (ncsc)" , Samuel Thibault List-Id: xen-devel@lists.xenproject.org Patrick Colp wrote: > Alex Zeffertt wrote: >> I suspect the problem is that the caml-stubdom target in >> stubdom/caml/Makefile compiles stubdom/caml/hello.ml and links it with >> $(CAMLLIB)/libasmrun.a. But this is a library compiled for the >> development machine platform (linux-i386-glibc) not for the stubdomain >> platform (minios-i386-newlib). >> >> Maybe the original hello.ml only worked through luck, and the fact that >> it used so very little of the ocaml language. > > What environment did you use to compile the stubdom? I tried using Ubuntu > with George Coker's patch and got the same result as you (page faulting). > Interestingly, I could use a %s and a string and that seems to work OK, but > not %d with an int. > > When I instead used Debian to compile the stubdom (which requires no > patch), then I could compile and run your code just fine (no page faults). > Maybe this is the problem you're having? > That's interesting, thanks! I am using Ubuntu intrepid with ocaml version 3.10.2-3ubuntu1. I don't really like the idea of requiring a Debian build environment as a solution. It suggests a dependency on something we really don't understand. Wouldn't it be better to rebuild ocaml under stubdom/ like we do for newlib and lwip, and the be sure we'll get the same results whatever the build machine? > >> In order to run a non trivial ocaml application in a stubdomain (e.g. >> ocaml xenstored) do I need to port ocaml to minios-i386-newlib? > > No, it should be possible as is. In fact, I've gotten my OCaml XenStore to > run in a caml-stubdom (compiled in a Debian domain). > > I'll soon be releasing a patch against the recently released disaggregated > C xenstored stuff that uses my OCaml XenStore in a caml-stubdom instead. > > Ah, it looks like we've been duplicating the work. I've been working on getting http://xenbits.xensource.com/ext/xen-ocaml-tools.hg integrated into xen-unstable.hg. The idea is that by default "make dist" builds the in-tree xenstored (as both a dom0 daemon and as a stubdom), but by uncommenting a line in Config.mk it will download xen-ocaml-tools.hg and build that instead (as both a dom0 daemon and as a stubdom). The choice of whether to run it as a dom0 daemon or as a stubdom is made post-install. This system allows you to override the url used to get the "remote" xenstored. The build system does something similar for qemu already. I'll send you my patches offline. > Patrick > Regards, Alex