con-ux bug?

Frank Mehnert fm3 at os.inf.tu-dresden.de
Fri May 12 13:23:26 CEST 2006


Hi,

On Friday 12 May 2006 12:36, Wei Shen wrote:
> > 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 :-)

Of course not, that was only a hint.

> > Please disassemble your con-ux binary, the instruction at the EIP is
> > important:
> >
> > objdump -ld 0x00b0dc7f
>
> 00b0dc74 <trampoline>:
> 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

That does not make much sense. Are you sure that you disassembled the
same binary which caused the general protection? I assume not. But as
I see something about int80 in your listing, I see the reason: Please
add

 -n7

to the command line options of Fiasco. The con-ux binary is trying to
execute a Linux system call (int80) because it ``knows'' that it is
running on Linux. The Fiasco kernel wouldn't allow this until you
force him by adding this command line option.

> 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.

Again: Are you sure that you binary matches the binary you bootet?
I don't think so. In fact, vc->do_drty is initialized at every time.
It is set once in vc_open_out() and then never changed. You are right
that we should switch it to fg_do_drty or bg_do_drty if we switch the
vc into foreground/background. But this has nothing to do with your
issue, it just forces the console to send update events more than
necessary.

Kind regards,

Frank
-- 
## Dept. of Computer Science, Dresden University of Technology, Germany ##
## http://os.inf.tu-dresden.de/~fm3                                     ##
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20060512/800c43e5/attachment-0001.sig>


More information about the l4-hackers mailing list