|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-devel
Re: [Xen-devel] caml stubdom crashes
 
Alex Zeffertt wrote:
 Hello ocaml minios stubdomain experts (that's narrowed down the list 
somewhat!)
 I've been playing with the caml version of the "hello world" example 
stubdomain that can be found in xen-unstable.hg/stubdom/caml/.
 If I make the following trivial modification to stubdom/caml/hello.ml 
the stub domain page faults.  According to addr2line the page fault is 
in ungetc.c:0.
--- a/stubdom/caml/hello.ml    Mon Mar 30 11:42:16 2009 +0100
+++ b/stubdom/caml/hello.ml    Thu Apr 02 15:15:45 2009 +0100
@@ -1,4 +1,6 @@
+let yr = 2009
+
 let main arg =
-  Printf.printf "Hello, world!\n%!."
+  Printf.printf "Hello, world %d!\n%!." yr
 let _ = Callback.register "main" main
 Without the above change the stub domain runs as expected, i.e. it does 
not page fault.
 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?
 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.
Patrick
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 
 |   
 
 | 
    | 
  
  
    |   | 
    |