From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 25409BCA2 for ; Fri, 19 Aug 2005 06:01:33 +0200 (CEST) Received: from rproxy.gmail.com (rproxy.gmail.com [64.233.170.206]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j7J41WWv024003 for ; Fri, 19 Aug 2005 06:01:32 +0200 Received: by rproxy.gmail.com with SMTP id a36so555317rnf for ; Thu, 18 Aug 2005 21:01:32 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=L3gGkxV22oHGroCo9VqjwdJ1SohUO5SXwBk/A7DAMHPdClabuPh/EklqVRGluTJG89NGYuFC0efA3bbiS0jyI/BcVqgCADKdJmxQnjnTYHhJ16INHlAbpZUd9sxM0QIr8UzcHaj7ljWFKAa8XTjRBnnHdHfGlriSbLtFYTgWjEc= Received: by 10.38.101.2 with SMTP id y2mr870583rnb; Thu, 18 Aug 2005 21:01:32 -0700 (PDT) Received: by 10.38.209.44 with HTTP; Thu, 18 Aug 2005 21:01:32 -0700 (PDT) Message-ID: Date: Fri, 19 Aug 2005 16:01:32 +1200 From: Jonathan Roewen To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] In need of serious help regarding threading In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: X-Miltered: at nez-perce with ID 4305599C.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 threading:01 debugger:01 threading:01 debugging:01 ocaml:01 ocaml:01 systhreads:01 threads:01 systhreads:01 threads:01 byterun:01 libs:01 bytecode:01 variants:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_BY_IP autolearn=disabled version=3.0.3 It appears (with the help of a friend good with a debugger) that there's something going wrong with my code, and how it's interacting with the GC. I have a debug compiled version of my kernel, the disassembly, sources to the C threading code, and some notes from the guy about the debugging @ http://moonbeam.purevoid.org/~jonathan/ocaml/ If someone can point out what I'm doing wrong, it'd be the biggest life-saver I could ever imagine! Jonathan On 8/19/05, Jonathan Roewen wrote: > Hi, >=20 > I hope someone with experience in the guts of the ocaml systhreads > package can help me out. >=20 > I've tried adapting the win32_threads.c source in systhreads to work > with DST. I've implemented a C co-op threading module, which appears > to function correctly according to the tests I've done. >=20 > However, I can't seem to be able to get ocaml threads to play along > nicely. I'm out of ideas, and really need some help >_< >=20 > All code is available online (http://glek.net/subversion/os/kernel/) > and can be checked out with an svn client (using URL above). For > building, you need to first do make boot (takes a while on lesser > machines like my PIII 600). Also, I copied hooks.h and signals.h from > the byterun folder to ocaml/libs/ocaml/caml (needed private values for > signals.h). And removed the bytecode variants of whatever was present. >=20 > The file with the ocaml threading code is > http://glek.net/subversion/os/kernel/ocamlthreads.c, and the C co-op > threading code is http://glek.net/subversion/os/kernel/threads.c >=20 > I would very much appreciate anyone who can take the time to look at > this, and discover what I'm undoubtedly doing wrong. This is a major > area of DST to be implemented, and without threading in OCaml, we're > pretty much stuck in the middle of no-man's land. >=20 > For once this is a legitimate cry for help ;-) I know I've sent some > stupid, stupid emails in the past.... >=20 > Thanks to all willing to help, >=20 > Jonathan >