harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Weldon Washburn" <weldon...@gmail.com>
Subject Re: [classlib][launcher] I am looking at the interaction between {classlib, launcher, drlvm} and {hysock, hysig, hythread}
Date Wed, 27 Sep 2006 16:02:05 GMT
gpProtectedMain() is in

classlib/trunk/modules/luni/src/main/native/launcher/shared/main.c

signalProtectedMain() is in

classlib/trunk/modules/luni/src/main/native/launcher/shared/cmain.c

Incidentally, I am noticing that portlib gets initialized with a default
copy of

MasterPortLibraryTable from portpriv.h.  This could be causing all kinds of
undefined behavior.

I think shortly after hyport_create_library() is called, we should re-write
the functions to point into DRLVM thread manager.  Andrey Chernyshev -- what
do you think?



On 9/26/06, Leo Li <liyilei1979@gmail.com> wrote:
>
> Hi, Weldon:
>     Which file includes signalProtectMain() or  gpProtectedMain ? :)
>
>
> On 9/25/06, Weldon Washburn <weldonwjw@gmail.com> wrote:
> >
> > It looks like hysignal.c is using the right monitor enter/exit().  That
> > is,
> > the one
> > from  drlvm/trunk/build/win_ia32_msvc_debug/deploy/jre/bin/hythr.dll
> >
> > However, a bunch of functions in classlib's hysignal.c have an incoming
> > argument of "HyPortLibrary *portlib".  The portlib variable can either
> > point
> > to the original classlib portlib C struct.  Or it can point to PORTLIB
> > which
> > is a C struct with all the entries nulled out (more on this later.)
> >
> > I think the next question to ask is what hysignal.c does with
> > the "HyPortLibrary *portlib" argument.  If anyone knows, please tell us.
> > Otherwise I will keep digging.
> >
> > From stepping through DRLVM bootup, it looks like classlib's portlib is
> > _dropped_  in signalProtectMain().  Then launcher gpProtectedMain calls
> > invocation(PORTLIB,...) where PORTLIB is a nulled out HyPortLibrary C
> > struct.  We need to put comments in the code describing the switch from
> > classlib's portlib to drlvm's nulled out version.
> >
> > On 9/22/06, Weldon Washburn <weldonwjw@gmail.com> wrote:
> > >
> > > All,
> > > Its not clear at this moment what threading implementation is being
> > > executed when hysignal.c calls hythread_monitor_enter().  If someone
> > > already knows, please tell us.  Otherwise,  I will step through it
> with
> > the
> > > debugger to find out what is going on.
> > >   - Weldon
> > >
> > > --
> > > Weldon Washburn
> > > Intel Middleware Products Division
> > >
> >
> >
> >
> > --
> > Weldon Washburn
> > Intel Middleware Products Division
> >
> >
>
>
> --
> Leo Li
> China Software Development Lab, IBM
>
>


-- 
Weldon Washburn
Intel Middleware Products Division

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message