Pagefaulting in lock instruction

Adam Lackorzynski adam at os.inf.tu-dresden.de
Fri May 6 11:57:44 CEST 2005


On Wed May 04, 2005 at 22:04:12 +0100, Tiago Jorge wrote:
> >><Consensus::startConsensus()>:
> >>/home/tiago/l4/pkg/WOO/server/src/Consensus_udp.cc:178
> >>01db6a50        push   %ebp
> >>01db6a51        mov    %esp,%ebp
> >>01db6a53        push   %edi
> >>01db6a54        push   %esi
> >>01db6a55        push   %ebx
> >>01db6a56        sub    $0xc37c,%esp
> >>01db6a5c        mov    8(%ebp),%ebx
> >>/home/tiago/l4/include/l4/lock/lock.h:97
> >>01db6a5f        lea    0xc3c8(%ebx),%eax
> >>01db6a65        mov    %eax,0xffff3c84(%ebp) <<--- PAGE FAULT 
> >>HERE!!!!!!!!!!!!
> >>/home/tiago/l4/include/l4/lock/lock.h:98
> >>01db6a6b        call   0x1dc0e80 <l4thread_myself>
> >>/home/tiago/l4/include/l4/lock/lock.h:101
> >>01db6a70        mov    0xffff3c84(%ebp),%ecx
> >>/home/tiago/l4/include/l4/lock/lock.h:98
> >>01db6a76        mov    %eax,0xffff3c80(%ebp)
> >>/home/tiago/l4/include/l4/lock/lock.h:101
> >>01db6a7c        test   %ecx,%ecx
> >>01db6a7e        je     0x1db6aa6
> >>
> >>##################################################
> >>
> >>as of my inexperience with Fiasco debug issues... what might be causing 
> >>this?
> >>    
> >>
> >
> >
> >Looking at the asm I wonder how the object is initialized and where does
> >it get its memory from?
> >  
> >
> the object its initialized as a global variable of my main program...
> 
> Consensus::Consensus ()
> {
> }

Just to make sure, is it called?

> so i think the pager it's the default... so i don't know why the program 
> it's goig to try and get the instruction at 0xffff3c84

Well, this is just a (negative) offset to %ebp, and %ebp is just the
start of the stack, so it's writing somewhere on the stack.

But I can only guess further. What about tar'ing up your pkg and sending
it to me (privately)? So I can give it a spin and maybe say something
for valuable.



Adam
-- 
Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list