summaryrefslogtreecommitdiff
path: root/serverboot
diff options
context:
space:
mode:
authorThomas Bushnell <thomas@gnu.org>1997-04-09 18:03:32 +0000
committerThomas Bushnell <thomas@gnu.org>1997-04-09 18:03:32 +0000
commitc7e93b108c7503f31d12932596f36a933961dfe2 (patch)
tree76a3492761072819ab6c9e6554bdfc6a13800cfe /serverboot
parente705ab9318be4e9a4c049246ff3e07006295a4f0 (diff)
Wed Apr 9 13:57:44 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* default_pager.c (default_pager_default_thread): New function. (default_pager): Fork default_pager_default_thread instead of doing it here to avoid the possibility that we are on a tiny stack. Current thread dies.
Diffstat (limited to 'serverboot')
-rw-r--r--serverboot/ChangeLog7
-rw-r--r--serverboot/default_pager.c23
2 files changed, 23 insertions, 7 deletions
diff --git a/serverboot/ChangeLog b/serverboot/ChangeLog
index c2caea69..4d589510 100644
--- a/serverboot/ChangeLog
+++ b/serverboot/ChangeLog
@@ -1,3 +1,10 @@
+Wed Apr 9 13:57:44 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * default_pager.c (default_pager_default_thread): New function.
+ (default_pager): Fork default_pager_default_thread instead of
+ doing it here to avoid the possibility that we are on a tiny
+ stack. Current thread dies.
+
Thu Apr 3 20:00:58 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* elf-load.c (exec_load): Include <elf.h> instead of
diff --git a/serverboot/default_pager.c b/serverboot/default_pager.c
index 6c44bd0d..e7d5fa5a 100644
--- a/serverboot/default_pager.c
+++ b/serverboot/default_pager.c
@@ -2664,6 +2664,20 @@ default_pager_thread_privileges()
}
any_t
+default_pager_default_thread (arg)
+ any_t arg;
+{
+ for (;;) {
+ kr = mach_msg_server(default_pager_demux_default,
+ default_pager_msg_size_default,
+ default_pager_default_set);
+ panic(my_name, kr);
+ }
+}
+
+
+
+any_t
default_pager_thread(arg)
any_t arg;
{
@@ -2876,13 +2890,8 @@ default_pager()
printf ("dp6\n");
- for (;;) {
- printf ("dp7\n");
- kr = mach_msg_server(default_pager_demux_default,
- default_pager_msg_size_default,
- default_pager_default_set);
- panic(my_name, kr);
- }
+ cthread_fork (default_pager_default_thread, 0);
+ cthread_exit (cthread_self ());
}
/*