con-ux bug?

Wei Shen cquark at
Fri May 12 12:36:01 CEST 2006


Thanks for your help.

> On Friday 12 May 2006 10:48, Wei Shen wrote:
> > I run con-ux with:
> > ./fiasco -G 800x600 at 16 -m 128 -l names -l dm_phys -l con-ux
> You might add ``-l log'' here.

I think it is not the cause :-)

> Please disassemble your con-ux binary, the instruction at the EIP is
> important:
> objdump -ld 0x00b0dc7f

00b0dc74 <trampoline>:
  b0dc74:       e8 37 00 00 00          call   b0dcb0 <int80_warning>
  b0dc79:       8d 64 24 04             lea    0x4(%esp),%esp
  b0dc7d:       cf                      iret
  b0dc7e:       90                      nop
  b0dc7f:       90                      nop

But as I have noted, I think the original position of the error is in
function sw_fill in pslim.c:
 if (vc->do_drty)
    vc->do_drty(x, y, w, h);

"vc->do_drty" equals 0x00b0d73c here which seems to be invalid. And I guess
"new->do_drty" should be initialized to "fg_do_drty" (NULL) in function
do_switch in main.c.

  b0d735:       08 a3 23 b2 00 89       or     %ah,0x8900b223(%ebx)
  b0d73b:       55                      push   %ebp
  b0d73c:       0c 8d                   or     $0x8d,%al
  b0d73e:       65                      gs
  b0d73f:       f4                      hlt
  b0d740:       5b                      pop    %ebx
  b0d741:       5e                      pop    %esi
  b0d742:       5f                      pop    %edi
  b0d743:       5d                      pop    %ebp
  b0d744:       e9 23 a1 00 00          jmp    b1786c <LOG_printf>


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the l4-hackers mailing list