This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: SEGV


> Starting program: /home/joze/test
> 
> Breakpoint 1, GC_gcj_malloc (lb=34, 
> ptr_to_struct_containing_descr=0x8144e74) at 
> ../../../gcc/boehm-gc/gcj_mlc.c:117
> 117         if( EXPECT(SMALL_OBJ(lb), 1) ) {
> (gdb) n
> 119               lw = GC_size_map[lb];
> (gdb) n
> 123             opp = &(GC_gcjobjfreelist[lw]);
> (gdb) p opp
> $1 = (ptr_t *) 0x0
> (gdb) p lw
> $2 = 10
> (gdb) p
> $3 = 10
> </gdb>
>  
> 
>    here again a NULL pointer is dereferenced.
> 
This looks insconsistent to me.  Since lw is 10, I find it hard to believe
that
&(GC_gcjobjfreelist[lw]) is 0.  Probably gdb is not qute telling the truth
here.  What's GC_gcjobjfreelist?

What platform is this on?  If I had to make a wild guess, I'd say that
somehow some of the Java initialization/class registration code is not
running correctly or soon enough.  This changed recently (the jcr section
stuff) and was for a while broken on some platforms.

I'd be a lot more confident that my wild guess is correct if
GC_gcjobjfreelist is 0.

Hans
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]