1 |
$Id: BUGS,v 1.33 2005/06/04 12:35:14 debug Exp $ |
KNOWN BUGS IN RELEASE 0.4.0 |
2 |
|
--------------------------- |
3 |
|
|
4 |
|
Because the MIPS emulation mode has been completely rewritten, and I |
5 |
|
haven't had much time to debug it, there are some known (serious) bugs: |
6 |
|
|
7 |
Serious bugs: |
o) Performance for non-R3000 MIPS emulation is very poor. |
8 |
|
|
9 |
x) An unknown math coprocessor bug. (Ultrix' dxclock sometimes looks |
o) Although the new MIPS emulation system is stable enough to |
10 |
weird.) |
let many guest operating systems install, it is not stable |
11 |
|
enough to let the emulator be compiled inside itself (in a |
12 |
|
guest OS) after an install, in all emulation modes. |
13 |
|
|
14 |
x) Enabling cache emulation (./configure --enable-caches) triggers bugs. |
o) Ultrix 4.5 on R3000 in the emulator has problems with keyboard |
15 |
|
interrupts; Ultrix 4.2 works fine, though, and Ultrix 4.5 when |
16 |
|
run with -C R4400. |
17 |
|
|
18 |
x) Compiling with certain versions of gcc and -O3 optimization on i386 |
These problems will hopefully be corrected in future releases. |
|
triggers bugs. I'm not sure whether they are in gcc or in GXemul. |
|
|
|
|
|
x) Linux/DECstation (Debian) oopses extremely often unless -U is used |
|
|
at run-time. I'm not sure yet why it bugs out. With -U, the risk is |
|
|
lower, but not completely gone. _Maybe_ this is a bug in Linux. Why? |
|
|
Because the oops message contains things like ANSI escape codes and |
|
|
characters in registers (including the pc and return address register); |
|
|
this looks like a buffer overflow in the serial driver. (Another thing |
|
|
that gives weight to this theory is that the serial driver in Linux is |
|
|
still being developed.) But this is just a guess. |
|
|
|
|
|
x) bintrans bugs. (For example, NetBSD/sgimips for IP22/24 hangs during |
|
|
boot with bintrans enabled.) |
|
|
|
|
|
|
|
|
Less serious bugs / issues: |
|
|
|
|
|
o) hardware device ticks are done at cycle specific intervals, not |
|
|
instruction intervals, so sometimes a fraction of a cycle can be |
|
|
"lost". |
|
|
|
|
|
o) running Linux/DECstation 2.4.26 with no scsi disks attached causes |
|
|
a warning message to be printed by Linux. |
|
|
|
|
|
o) UDP packets that are too large are not handled well by the Lance device. |
|
|
|
|
|
o) Colors in X11 framebuffers on MacOS X hosts are wrong. (I'm not sure |
|
|
how to solve this; the code works on both little-endian (Alpha) and |
|
|
big-endian (UltraSPARC) X-servers...) |
|
|
|
|
|
o) bintranslated 64-bit stuff checks to see if the top 32 bits are |
|
|
all zeroes or all ones, and then uses 32-bit tables and such. This |
|
|
is a bug. It should check the top 33 bits, not 32. (Alpha only, already |
|
|
fixed for i386?) |
|
|
|
|
|
o) NetBSD/arc 2.0 uses the ASC controller in a way which GXemul cannot yet |
|
|
handle. (NetBSD 1.6.2 works ok.) |
|
19 |
|
|