1 | Since COFF-encapsulation is obsolete, this may not be needed anymore. |
---|
2 | |
---|
3 | Return-Path: <jkp@sauna.hut.fi> |
---|
4 | Date: Mon, 10 Apr 89 10:13:45 +0300 |
---|
5 | From: Jyrki Kuoppala <jkp@sauna.hut.fi> |
---|
6 | Sender: jkp@sauna.hut.fi |
---|
7 | To: info-gcc@prep.ai.mit.edu |
---|
8 | Subject: Kernel fix needed for Altos 3068 to get coff-encapsulation working right |
---|
9 | Organization: Helsinki University of Technology, Finland. |
---|
10 | |
---|
11 | Here's a description how to fix a kernel bug in Altos 3068 and get |
---|
12 | gcc-compiled programs working. |
---|
13 | |
---|
14 | Author: Jyrki Kuoppala (jkp@cs.hut.fi) |
---|
15 | Last modified: Mon Apr 10 09:28:40 1989 |
---|
16 | |
---|
17 | There's a bug in the Altos 3068 kernel that causes gcc-compiled |
---|
18 | programs to fail in certain situations when the machine has a heavy |
---|
19 | load and also in some other situations. The bug exists at least in |
---|
20 | SVR 2.2 1.0gT1 and SVR 2.2 1.0e. |
---|
21 | |
---|
22 | If you have source code to your system, apply the following change to |
---|
23 | os/exec.c (function gethead): |
---|
24 | |
---|
25 | Change the lines containing |
---|
26 | |
---|
27 | u.u_exdata.ux_tstart = sizeof(struct naout) + |
---|
28 | sizeof(struct filhd) + (ep->ef.nscns * sizeof(struct scnhdr)); |
---|
29 | |
---|
30 | to |
---|
31 | |
---|
32 | u.u_exdata.ux_tstart = u.u_exdata.ux_txtorg; |
---|
33 | |
---|
34 | If you only have binary, use sdb to find out the address of the |
---|
35 | previous lines (on our system it's gethead+0x140) and use your |
---|
36 | favourite binary editor to change the bytes '3036 0162 fffc 0002 0280 |
---|
37 | 0000' to '23f9 01fb f4ca 01fb f4c2 6016'. This may or may not work in |
---|
38 | your case, depending on the version of the operating system and the |
---|
39 | phase of the moon. |
---|
40 | |
---|
41 | Here's what is just before gethead+0x140 to ease finding out the right place: |
---|
42 | |
---|
43 | 0x9224 (gethead+0x122): 23f9 01fb f4ca 01fb f4ce mov.l &0x1fbf4ca.L,&0 |
---|
44 | x1fbf4ce.L [] |
---|
45 | 0x922e (gethead+0x12c): 23f9 01fb f4c6 01fb f4ca mov.l &0x1fbf4c6.L,&0 |
---|
46 | x1fbf4ca.L [] |
---|
47 | 0x9238 (gethead+0x136): 23f9 01fb f4c2 01fb f4c6 mov.l &0x1fbf4c2.L,&0 |
---|
48 | x1fbf4c6.L [] |
---|
49 | |
---|
50 | Good luck ! |
---|
51 | |
---|
52 | //Jyrki |
---|
53 | |
---|
54 | jkp@cs.hut.fi |
---|
55 | |
---|