Re: Build Failure
Jochen Kunz <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.hp700 |
|---|---|
| Message-ID | <[email protected]> |
On Sat, 5 Jun 2004 08:52:30 -0500 Zach Lowry <[email protected]> wrote: > Success! I've gotten a snapshot of the 5/22/04 sources built, and > booted single-user. Fine! :-) > Multi-user gives me "kernel: DTLB miss trap, code=0", which I see is > attributed to the GCC bug. No. That is the kernel bug that I still could not locate. Maybe a broken trap handler or a race condition or ... You can try the patch below. With that you should get into DDB insted an endless repeated error message: (Beware of the line wrap.) --- sys/arch/hppa/hppa/db_interface.c.orig Sat Jun 5 16:51:37 2004 +++ sys/arch/hppa/hppa/db_interface.c Sat Jun 5 16:52:17 2004 @@ -170,6 +170,7 @@ break; default: kdbprinttrap(type, code); +break; if (db_recover != 0) { db_error("Caught exception in DDB; continuing...\n"); /* NOT REACHED */ > If this is truly a GCC bug, how have the OpenBSD folks gotten around > this? Is this due to toolchain version differences? Last time I looked at OpenBSD they still used GCC 2.95 where we use 3.3.3. The GCC bugs show up at compilation, not at runtime. There are two bugs: One is triggered by compiling an a LP64 host and gives an "internal compiler error". The other is in the optimizer and is triggered even on LP32 hosts. Try to compile a kernel with -Ox where x != 0 and you will get an error message from the assembler about false assembler code when compiling e.g. src/sys/arch/hp700/dev/mem.c. IIRC there is an instruction with a too big address displacement generated. -- tschüß, Jochen Homepage: http://www.unixag-kl.fh-kl.de/~jkunz/