From owner-freebsd-hackers Tue Jul 11 13:02:10 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id NAA02469 for hackers-outgoing; Tue, 11 Jul 1995 13:02:10 -0700 Received: from relay3.UU.NET (relay3.UU.NET [192.48.96.8]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id NAA02462 for ; Tue, 11 Jul 1995 13:02:07 -0700 Received: from uucp4.UU.NET by relay3.UU.NET with SMTP id QQyxyu27868; Tue, 11 Jul 1995 16:02:18 -0400 Received: from sawmill.UUCP by uucp4.UU.NET with UUCP/RMAIL ; Tue, 11 Jul 1995 16:02:05 -0400 Received: by sawmill.uucp (/\==/\ Smail3.1.21.1 #21.8) id ; Tue, 11 Jul 95 14:59 EST Message-Id: Date: Tue, 11 Jul 95 14:59 EST From: sawmill!rjk@uunet.uu.net (Richard Kuhns) To: freebsd-hackers@freebsd.org Subject: BSDI 2 (or is it BSD/OS?) binaries Sender: hackers-owner@freebsd.org Precedence: bulk Here's a little more info on the problem with running BSDI v2 binaries. The relevant assembly code: (gdb) disass start Dump of assembler code for function start: 0x102c : pushl %ebp 0x102d : movl %esp,%ebp 0x102f : pushl %esi 0x1030 : pushl %ebx 0x1031 : cmpl $0x0,0x393d0 0x1038 : jne 0x1044 0x103a : movl $0xefbfdff0,0x393d0 0x1044 : movl 0x393d0,%esi 0x104a : movl 0x8(%esi),%edx 0x104d : movl %edx,0x3a42c 0x1053 : movl (%esi),%eax 0x1055 : movl (%eax),%ebx 0x1057 : testl %ebx,%ebx 0x1059 : je 0x1076 0x105b : pushl $0x2f 0x105d : pushl %ebx 0x105e : call 0x12f1c 0x1063 : addl $0x8,%esp 0x1066 : testl %eax,%eax 0x1068 : je 0x106d 0x106a : incl %eax 0x106b : jmp 0x106f 0x106d : movl %ebx,%eax 0x106f : movl %eax,0x39494 0x1074 : jmp 0x1080 0x1076 : movl $0x1028,0x39494 0x1080 : movl $0x0,0x3a43c 0x108a : pushl 0x8(%esi) 0x108d : pushl (%esi) 0x108f : pushl 0x4(%esi) 0x1092 : call 0x1494
0x1097 : pushl %eax 0x1098 : call 0x2bcb0 0x109d : leal 0xfffffff8(%ebp),%esp 0x10a0 : popl %ebx 0x10a1 : popl %esi 0x10a2 : leave 0x10a3 : ret ... The program terminates with a segmentation fault at 0x1055 in start (). Asking gdb for a backtrace gives (gdb) bt #0 0x1055 in start () Cannot access memory at address 0xefbfd9e0 (gdb) According to nm, the symbols around a couple of interesting addresses are: ... 000393d0 B ___ps_strings 000393d4 B _DHOME 000393d8 B ___cleanup 000393dc B __derrf 000393e0 B __derr 000393e4 B __derri 000393e8 B __derrs ... and ... 0003a42c B _environ 0003a430 B _oldmod 0003a438 B _group 0003a43c B _errno 0003a440 B _fls_file ... Anyone have any brainstorms? I'm still playing with this under FreeBSD 2.0 (my CDs haven't arrived yet), and I'm looking for someone with a BSDI 2 system that would be willing to give me a little info, too. -- Rich Kuhns rjk@grauel.com PO Box 6249 100 Sawmill Road Lafayette, IN 47903 (317)477-6000 x319