blob: d8b798e329d07df06a7f97051f4bb92948725d8e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
--- src/thread.c.orig Wed Nov 5 22:03:00 1997
+++ src/thread.c Sun Jan 30 18:09:03 2000
@@ -118,7 +118,7 @@
&& scp->sc_pc <= (unsigned long)_ENDMONITOR)
return 0;
put(current, &ready);
- sigsetmask(scp->sc_mask);
+ sigprocmask(SIG_SETMASK, NULL, &(scp->sc_mask));
run();
return 0;
}
@@ -243,13 +243,13 @@
critical--; } while (0);
args = t->sp;
}
-#if alpha
- { extern void _start(void);
+#if __alpha
+ { extern void _thrstart(void);
t->sp -= 112/8;
t->sp[(48+24)/8] = (unsigned long)Thread_exit;
t->sp[(48+16)/8] = (unsigned long)args;
t->sp[(48+ 8)/8] = (unsigned long)apply;
- t->sp[(48+ 0)/8] = (unsigned long)_start; }
+ t->sp[(48+ 0)/8] = (unsigned long)_thrstart; }
#elif mips
{ extern void _start(void);
t->sp -= 16/4;
@@ -269,7 +269,7 @@
*--t->sp = (unsigned long)_start - 8;
*--t->sp = (unsigned long)fp;
t->sp -= 64/4; }
-#elif linux && i386
+#elif (linux || unix) && i386
{ extern void _thrstart(void);
t->sp -= 4/4;
*t->sp = (unsigned long)_thrstart;
|