summaryrefslogtreecommitdiff
path: root/init/ChangeLog
blob: 478685872d171f18c4de8b3fe52244b9cb03aa53 (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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
2002-03-23  James A. Morrison  <ja2morri@uwaterloo.ca>

	* init.c (reboot_mach): Use ERR, not errno.
	(run): Likewise.
	(lauch_core_servers): Likewise.
	(run_for_real): Use MACH_PORT_NULL explicitly.
	(start_child): Likewise.

2002-01-02  Roland McGrath  <roland@frob.com>

	* init.c [KERN_INVALID_LEDGER]:
	Pass extra arguments to task_create for OSF variant.

2001-08-23  Roland McGrath  <roland@frob.com>

	* init.c (main): Pass ARGP_NO_ERRS|ARGP_IN_ORDER to argp_parse.

2001-08-20  Roland McGrath  <roland@frob.com>

	* init.c [! SPLIT_INIT]: All this code removed.
	[SPLIT_INIT]: This code no longer conditional.
	(_PATH_RUNCOM, mapped_time, do_fastboot): Removed.
	* Makefile (split-init): Variable removed.
	(SRCS): Add stubs.c here unconditionally.
	[$(split-init) = no]: Conditional defns removed.
	(LCLHDRS): Variable removed.
	* ttys.c, ttys.h: Files removed.

	* init.c (kernel_command_line): Variable removed.
	(options, parse_opt): Remove -K option.
	(frob_kernel_process): Collect arguments from &global_argv[1]
	instead of slicing up kernel_command_line.
	(start_child): Take a second arg, if non-null more arguments for PROG.
	(launch_something): Change caller.  On first try, pass &global_argv[1].

2001-07-02  Roland McGrath  <roland@frob.com>

	* init.c (reboot_system): Don't pass null pointer to RPC out param.
	Thanks to Moritz Schulte <moritz@chaosdorf.de> for finding this.

2001-01-17  Neal H Walfield  <neal@cs.uml.edu>

	* init.c (open_console): Conform to new fshelp_start_translator
	semantics.

2000-12-21  Marcus Brinkmann  <marcus@gnu.org>

	* init.c (process_rc_script): If malloc fails, return ENOMEM.
	Reported by Igor Khavkine <i_khavki@alcor.concordia.ca>.

2000-03-17  Thomas Bushnell, BSG  <tb@mit.edu>

	* init.c (launch_core_servers): Don't use MOVE_SEND in Hurd RPCs.

2000-03-13  Roland McGrath  <roland@baalperazim.frob.com>

	* stubs.c (send_signal): Don't use mach_msg_destroy, since it wants
	the local/remote ports reversed.  Destroy the rights by hand instead.

	* stubs.c (send_signal): Make MESSAGE auto instead of static.
	Take new argument TIMEOUT, passed to mach_msg instead of zero.
	(send_signal): For MACH_SEND_TIMED_OUT failure, destroy the
	pseudo-received message to avoid leaking send rights.

	* init.c (process_signal): Pass new argument, timeout of 500 ms.

1999-09-28  Thomas Bushnell, BSG  <tb@mit.edu>

	* init.c (frob_kernel_process): Allocate the kernel's page in the
	actual kernel task, not in our own.  I wonder how this ever
	worked.  Also if we fail in that allocation, free the page we
	allocated in our own space.

1999-08-24  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (notify_shutdown): Add const to argument type.

1999-07-24  Roland McGrath  <roland@baalperazim.frob.com>

	* Makefile (split-init): Set to `yes' by default.

1999-07-10  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c: Add #include <sys/mman.h> for munmap decl.

1999-07-09  Thomas Bushnell, BSG  <tb@mit.edu>

	* init.c (frob_kernel_process): Use mmap instead of vm_allocate.

1999-07-03  Thomas Bushnell, BSG  <tb@mit.edu>

	* init.c (reboot_system): Use munmap instead of vm_deallocate.
	(frob_kernel_process): Likewise.
	(kill_everyone): Likewise.

1999-06-19  Roland McGrath  <roland@baalperazim.frob.com>

	* Makefile (HURDLIBS): Add ports and fshelp only if $(split-init)!=yes.

	* init.c (open_console): Put this function inside [! SPLIT_INIT].

1999-06-18  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c [SPLIT_INIT] (child_pid, child_task): New variables.
	(process_signal, start_child, launch_something, launch_system): New
	functions.
	[! SPLIT_INIT] (system_state, shell_pid, rc_pid, launch_single_user,
	process_rc_script, launch_multi_user, launch_system, kill_everyone,
	kill_multi_user, process_signal): Variables and functions put inside
	#ifndef SPLIT_INIT.
	* stubs.c: New file, modified from ../proc/stubs.c.
	* Makefile (SRCS): Remove ttys.c here.
	[$(split-init) = yes] (SRCS): Add stubs.c
	[$(split-init) = yes] (init-CPPFLAGS): New variable, -DSPLIT_INIT.
	[$(split-init) = no] (SRCS): Add ttys.c only here.
	[$(split-init) = no] (LDLIBS): Put defn (-lutil) under this test.
	(split-init): New variable to turn on split-init, commented out.

1999-06-15  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (booted): New variable.
	(open_console): Use that instead of system_state.
	(S_startup_essential_task): Likewise.
	(do_mach_notify_dead_name): Likewise.
	(launch_system): New function.
	(S_startup_essential_task): Call it.

	* init.c (global_argv): Make static.

	* init.c (startup_envz, startup_envz_len): New variables.
	(run, run_for_real): Use those for child environment.
	(main): Set them up from our ENVP argument.

1999-06-14  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (main): Barf if run in a normal Hurd environment (not boot).

	* init.c (record_essential_task): Add missing return.

	* ttys.c: Include "ttys.h".

1999-06-13  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (kill_multi_user): Suggest `ps -AlM' in error message.

	* init.c (record_essential_task): New function, broken out of
	S_startup_essential_task.
	(S_startup_essential_task): Call it.
	(frob_kernel_process): Call it for kernel task port.
	(kill_everyone): Remove special case for PID 2 (kernel task).

	* init.c (run): Add const to SERVER arg, PROG local.
	Don't trim directory name from PROG for argument.

	* ttys.c (struct terminal): Use `pid_t' for `pid' member.
	(ttys, nttys, ttyslen): Make variables static.
	(setup_terminal, add_terminal, find_line, startup_terminal,
	shutdown_terminal): Make all these functions static.

	Move all the /etc/ttys handling stuff into a separate source file.
	* init.c (_PATH_LOGIN, WINDOW_DELAY, struct terminal,
	nttys, ttyslen, setup_terminal, add_terminal,
	init_ttys, free_ttys, startup_terminal, startup_ttys,
	find_line, restart_terminal, shutdown_terminal, reread_ttys): Move to
	* ttys.c: ... here, new file.
	* ttys.h: New file, declare external functions in ttys.c.
	* Makefile (SRCS): Add ttys.c.
	(OBJS): Derive from $(SRCS).
	(LCLHDRS): New variable, add ttys.h.

1999-06-05  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (request_dead_name): New function.
	(S_startup_request_notification, S_startup_essential_task): Use it.
	(run): Request dead-name notification for new task.
	(main): Request dead-name notification for FSTASK.
	(do_mach_notify_dead_name): If system_state is INITIAL, recognize
	FSTASK, AUTHTASK, PROCTASK specifically and crash with appropriate msg.

1999-06-04  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (launch_core_servers): Use proc_child on the proc server task
	to register it with itself as our child.  Snarf its proc port and use
	proc_mark_exec do remove that unsightly `f', as we do for the other
	bootstrap processes.

1999-06-02  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (frob_kernel_process): If no --kernel-command-line option,
	try `getenv ("MULTIBOOT_CMDLINE")' before defaulting to "(kernel)".

1999-06-01  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (CRASH_FLAGS): Macro removed.
	(crash_flags): New variable replaces it.
	(crash_mach, crash_system): Use crash_flags instead of CRASH_FLAGS.
	(options, parse_opt): Add --crash-debug/-H, to set crash_flags to
	RB_DEBUGGER.

	* init.c (kernel_command_line): New variable.
	(frob_kernel_process): New function.
	(S_startup_essential_task): Call it after init_stdarrays.
	(options): Add --kernel-command-line/-K option.
	(parse_opt): Grok -K, set kernel_command_line.

Sat Mar  6 17:13:48 1999  Thomas Bushnell, BSG  <tb@mit.edu>

	* init.c (do_mach_notify_dead_name): Deallocate the extra
	reference to NAME that the notification carries.

Tue Feb 16 18:54:33 1999  Thomas Bushnell, BSG  <tb@mit.edu>

	* init.c (shutdown_terminal): Revoke access to the terminal from
	existing programs.

1998-10-24  Roland McGrath  <roland@baalperazim.frob.com>

	* init.c (main): Don't bogusly clear bootstrap_args.
	Reported by OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>.

Tue May 12 12:03:38 1998  Thomas Bushnell, n/BSG  <tb@mit.edu>

	* init.c (setup_terminal): Free LINE after done using it.
	(process_rc_script): Likewise free RCARGS.
	Both reported by Katusya Tanaka (wyvern@pb3.so-net.ne.jp).

1997-06-30  Miles Bader  <miles@gnu.ai.mit.edu>

	* init.c (bootstrap_args): Initialize to 0.
	(parse_opt): New function.
	(options, doc): New variables.
	(main): Parse args using argp.
	Include <argp.h>.

Thu Sep 12 16:32:31 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* Makefile (HURDLIBS): New variable.
	(init): Delete special target.

	* Makefile (mung_msg_S.h): Put rule *after* inclusion of Makeconf.

Thu Sep  5 11:12:32 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* init.c: Include <version.h>.
	(init_version): Delete variable.
	(launch_core_servers): Pass empty string as release; HURD_VERSION
	as version.

Tue Aug 13 17:51:38 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* Makefile (init): Remove -lutil.
	(libutil-libsubst): Variable removed.
	(LDLIBS): New variable.

Mon Aug 12 11:12:22 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* init.c (setup_terminal): Declare LINE.
	(add_terminal): Don't declare LINE.

Thu Aug  8 16:34:06 1996  Thomas Bushnell, n/BSG  <thomas@gnu.ai.mit.edu>

	* init.c (setup_terminal): New function.
	(add_terminal): Use setup_terminal.
	(reread_ttys): When turning an existent terminal spec on, call
	setup_terminal before startup_terminal.

	* init.c (struct terminal): New member `read'.
	(shutdown_terminal): New function.
	(reread_ttys): Use shutdown_terminal instead of doing it by hand.
	Keep track of which ttys we used to know about are no longer in
	/etc/ttys, and treat them as now `off'.

	* init.c (kill_everyone): `continue' in the essential task case
	didn't go back to the main loop; fix it up correctly.

Tue Jul 16 11:55:09 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (process_signal): Set WUNTRACED in call to waitpid.

Sun Jul  7 21:18:10 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (init_stdarrays): Don't use unsafe MOVE_SEND in call to
	interruptible proc_setexecdata.
	(open_console): Likewise, for file_set_translator.

Wed Jul  3 14:46:41 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* Makefile (init): Add libports (because libfshelp.so requires it,
 	lose lose lose).

	* init.c (process_signal) [case SIGCHLD]: Correctly place `break'
 	*outside* of for loop.

Mon Jul  1 18:07:56 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (process_signal): On SIGCHLD, keep reaping children until
 	we get an error; tolerate all errors silently.

Mon Jun 24 16:29:24 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (kill_multi_user): Kill user tasks before doing
 	notify_shutdown.

Fri Jun 21 16:17:08 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* init.c (open_console): Pass correct length of argument vector
	when setting active translators.
	<maptime.h>: New include.
	(open_console): Print error messages for /dev/console failures.
	Reduce the scope of some variables.

Thu Jun 20 14:51:14 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (mapped_time): New variable.
	(launch_multi_user): Initialize mapped_time.

	* init.c (_PATH_RUNCOM): Move to /libexec/rc.

Wed Jun 19 14:49:08 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (run_for_real): Doc fix.
	(startup_terminal): Deal properly if one of the run_for_real's
	fails.
	(launch_single_user): If the shell can't be started, crash the
	system.
	(process_rc_script): Return non-zero if run_for_real fails.
	(process_signal) [SIGCHLD]: If process_rc_script fails, go back to
	single-user.
	(S_startup_essential_task): Likewise.
	(init_ttys): Return non-zero if we fail.
	(startup_terminal): Return non-zero if we don't actually start
	anything.
	(startup_ttys): Return non-zero if we fail.
	(launch_multi_user): If init_ttys fails, go back to single.  If we
	go multi, actually set system_state accordingly.  If startup_ttys
	fails, go back to single.
	(init_ttys, reread_ttys): Test return value of setttyent
	correctly.

Mon Jun 17 14:05:33 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* Makefile (libutil-libsubst): Define (as -lutil); and link
	against -lutil.
	* init.c: Include <ttyent.h>, <argz.h>, and <utmp.h>.
	(add_terminal, init_ttys, free_ttys, startup_terminal,
	startup_ttys, find_line, reread_ttys, restart_terminal): New functions.
	(launch_multi_user): Use new functions to do things right.
	(session_pid): Delete variable.
	(kill_multi_user): Call free_ttys.
	(process_signal) [SIGHUP]: Call reread_ttys.
	[SIGCHLD/MULTI]: Call restart_terminal.

	* init.c (run_for_real): New arg `setsid'; only do setsid if it's
	set.  All callers changed.  Return the pid of the new program,
	not the task port.  All callers changed.

	* Makefile (dir): Now init.

	* init.c: Include "mung_msg_S.h" instead of "msg_S.h".
	(S_msg_sig_post, S_msg_sig_post_untraced): Include SIGCODE parm.
	* Makefile (mung_msg_S.h): New rule.

Mon Jun 17 00:17:37 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* init.c (run_for_real, open_console, process_signal, reboot_mach,
	run_for_real, run, reboot_system): Use error instead of fprintf.
	(notify_shutdown): Always emit terminating newline.

Fri Jun 14 11:07:30 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c: Include <paths.h>, <error.h>, <sys/wait.h>, and
	<hurd/msg_reply.h>.
	(S_startup_essential_task): When all core servers have
	showed up, call launch_single_user only if RB_SINGLE; otherwise
	call process_rc_script.  Call init_stdarrays here.
	(open_console): New function; massaged guts taken from
	launch_single_user.  Be more verbose if we do something unusual.
	(launch_single_user): Call open_console.  Don't call
	init_stdarrays here.
	(system_state, default_ints): New variables.
	(main): Initialize SYSTEM_STATE and DEFAULT_INTS.
	(run_for_real): Pass default_ints.
	(run): Likewise.
	(S_startup_essential_task): Delete var INITDONE; use SYSTEM_STATE
	instead.
	(launch_single_user): Set SYSTEM_STATE to SINGLE.
	(process_rc_script): New function.
	(launch_multi_user): New function.
	(kill_everyone): New function.
	(kill_multi_user): New function.
	(do_fastboot, rc_pid, session_pid): New variables.
	(process_signal): New function; guts from S_msg_sig_post_untraced.
	Handle state transitions here when programs exit.  Process
	SIGTERM, and SIGHUP appropriately.
	(_PATH_RUNCOM, _PATH_LOGIN): New macros.
	(S_msg_sig_post_untraced): Only validate signal here; use
	process_signal to do the work, but reply first.
	(S_msg_sig_post): Likewise.
	(notify_shutdown): New function.
	(reboot_system): Use notify_shutdown.

Wed Jun 12 16:01:17 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (S_startup_request_notification): Fill NT->name properly.

Mon May 27 11:33:53 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* init.c (launch_single_user): Open TERM RDWR.
	Use openport to get FD from TERM.
	Print errno on assertion failure for FD.

Fri May 24 12:29:20 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (reboot_mach): Insert a brief pause before actually
 	rebooting the kernel so that the user has a chance to see any
 	messages that may be displayed.

Tue May 14 11:26:49 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (S_msg_get_exec_flags, S_msg_set_all_exec_flags,
 	S_msg_set_some_exec_flags, S_msg_clear_some_exec_flags): Delete
 	functions.
	(S_msg_describe_ports): New function.

	* init.c (reboot_system): Print prettier messages for shutdown
 	notifications.

Fri May 10 09:25:16 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c: <hurd/startup_notify.h> -> "startup_notify_U.h".
	* Makefile (OBJS): Add startup_notifyUser.o.

Thu May  9 19:03:24 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (struct ntfy_task): New member `name'.
	(S_startup_request_notification): Expect and record name.
	(S_msg_startup_dosync): Delete function.
	Include <hurd/startup_notify.h>.
 	(reboot_system): Use new startup_dosync interface.

	* init.c (init_stdarrays): Use new authentication interface.

Mon May  6 14:25:02 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (init_version): Upgrade to 0.0.

Mon Apr 29 16:49:18 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (reboot_system): Not quite yet, though.

Sun Apr 28 19:15:30 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* init.c (reboot_system): Use 1 minute timeout on reply to
 	msg_startup_dosync.

Wed Apr 17 17:06:30 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* init.c (launch_single_user): Set an active, not passive,
 	translator on /tmp/console, so it works with / read-only.
	* Makefile (init): Depend on libfshelp.

Mon Mar 25 16:55:22 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* Makefile (init): Add explicit dependency so that
 	libshouldbeinlibc is included.
	* init.c: Include <wire.h>.
	(main): Delete declarations of _etext _edata, and __data_start.
	(main): Use new wire_task_self function instead of doing it ourselves.

Tue Dec 19 18:29:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (launch_core_servers, run_for_real): Call proc_mark_exec
	on child proc ports.

Tue Dec  5 15:22:25 1995  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>

	* init.c (launch_single_user): Change initialization of TERMINAL
 	to match new term driver arg syntax.  Start terminal as ordinary
 	passive translator instead of special weird kludge.  Deleted
	variables foobiebletchcount, foobiebletch, and termtask.

Sun Nov  5 02:03:33 1995  Miles Bader  <miles@gnu.ai.mit.edu>

	* init.c (reboot_system): Add flags, noise, & noise_len params to
	proc_getprocinfo.  Deallocate NOISE if necessary.
	(S_msg_report_wait): New function.

Tue Oct 24 16:49:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c: Undo last change of 9Oct95.

Mon Oct  9 04:29:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c: Pass dealloc args in file_exec calls.

Thu Jul  6 15:34:23 1995  Michael I Bushnell  <mib@duality.gnu.ai.mit.edu>

	* init.c (S_msg_sig_post, S_msg_sig_post_untraced): Reverse order
 	of these definitions.

	* init.c: Include <hurd/msg_server.h>.
	(reboot_mach): Insert extra parens around assignment inside while
	test.
	(launch_core_servers): Remove assignment from inside if test.

	* Makefile: Removed dependencies that are now automatically
 	generated.

Thu Feb  9 17:18:21 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (S_msg_sig_post_untraced): Omit obnoxious "random child
	died" messages.

Sat Jan 28 15:00:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c: Include "msg_S.h".  Prepend `msg_' to msg.defs server
 	functions.  Add stubs for new msg.defs functions.

Thu Jan 19 01:59:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c: Prepend `msg_' to names of msg.defs RPCs.

Mon Nov 28 15:00:42 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (run_for_real): Print error msg if file_exec fails.
	(shell_pid): New variable.
	(demuxer): Also try msg_server.
	(launch_single_user): Open terminal O_RDWR and dup to 0, 1, 2.
	Set shell_pid after starting shell.
	(S_sig_post): New function; grok SIGCHLD and restart shell if
	shell_pid dies.
	* Makefile (OBJS): Add msgServer.o.
	(init.o): Depend on msg_S.h.

Fri Nov 11 14:06:43 1994  Michael I Bushnell  <mib@churchy.gnu.ai.mit.edu>

	* init.c (fakeboot): New variable.
	(STANDALONE): Deleted macro.
	(main): Set FAKEBOOT if -f was passed.
	(reboot_mach): Use FAKEBOOT flag instead of STANDALONE macro.
	(launch_core_servers): Likewise.
	(reboot_system): Likewise.  Also don't exit here; let
	reboot_mach exit.

Tue Nov  1 04:13:49 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (main): Use &_start for start of text to wire.
	(main): Use assert_perror in place of `assert (!err)'.
	(launch_single_user): Use _PATH_CONSOLE and _PATH_BSHELL instead
	of hardcoded strings.
	Check for error from io_stat on console, print message.
	Add #if 0'd code to prompt for shell name.

Tue Sep  6 13:09:40 1994  Michael I Bushnell  <mib@churchy.gnu.ai.mit.edu>

	* init.c (launch_single_user): Don't run device or pipes
	servers by default.  Run terminal server inside /tmp if
	/dev/console isn't set up properly.

Wed Aug 31 01:03:51 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (launch_single_user): Test TERMTASK as port, not boolean;
	if null, properly initialize TERM to MACH_PORT_NULL as well.

Tue Aug 30 17:07:07 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c: Include <hurd/term.h>.

	* init.c (run): Use file_name_lookup instead of path_lookup.
	(launch_single_user): Likewise.
	(run_for_real): Likewise.

	* init.c (init_stdarrays): Use new authentication protocol.

Mon Aug 22 16:44:11 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (run_for_real): If CTTY is set, then also put the process
	in its own login collection.

Fri Aug 19 12:16:47 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (run_for_real): New arg `ctty'.  All callers changed.
	If it's set, then set the new process's INIT_PORT_CTTYID
	accordingly, and change CTTY's owner to be the new process pgrp.
	(launch_single_user): Don't free TERM right away, only do it
	after we've passed it to run_for_real on the shell.

Thu Aug 18 16:48:08 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (main): Print informative bootstrap messages.
	(launch_core_servers): Likewise.
	(launch_single_user): Likewise.
	(run): Don't print meaningless bootstrap clutter.

	* init.c (launch_single_user): Use task_info; it's less intrusive
	than task_suspend/task_resume.

	* init.c (launch_single_user): Run pipes before shell.

	* init.c (launch_single_user): Pause a bit to give term a chance
	to startup.

	* init.c (bootstrap_args): New variable.
	(main): Set `bootstrap_args' appropriately from argv[1].
	(prompt_for_servers): Deleted variable.
	(run): Use RB_INITNAME instead of prompt_for_servers.
	Only do `pausing' hack if RB_KDB is set.
	(run_for_real): Likewise.

	* init.c (main): Wire text and data segment soon after starting.

Wed Aug 17 19:20:51 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (run_for_real): Call proc_setsid on new proc.

Wed Aug 17 14:04:18 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (init_stdarrays): New function.
	(launch_single_user): Call init_stdarrays.

Tue Aug 16 00:44:20 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (launch_single_user): Prompt whether to run term or dev.

	* init.c (main): Set default_ports[INIT_PORT_BOOTSTRAP] to STARTUP
	while running proc and auth, and then reset it to null.

Mon Aug 15 23:16:24 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>

	* init.c (launch_single_user): Use a volatile var to choose dev or
	term, so you can set it in gdb.
	(main): Set bootstrap port to MACH_PORT_NULL after fetching it.
	Don't set default_ports[INIT_PORT_BOOTSTRAP]; it should be nil.

Mon Aug 15 11:40:34 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (launch_core_servers): Renamed from launch_system.
	Don't start dev, term, pipes, or shell here.
	(S_startup_procinit): Call launch_core_servers instead of
	launch_system.
	(S_startup_authinit): Likewise.
	(launch_single_user): New function.
	(S_startup_essential_task): Call launch_single_user once
	all the core servers have registered themselves here.

Fri Aug 12 14:05:07 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (launch_system): Comment out use of dev for now.

Thu Aug 11 12:25:32 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* init.c (launch_system): Run dev instead of term.

Thu Jul 21 17:45:45 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>

	* Makefile: Rewritten in accord with new scheme.
	* init.c: Include "startup_reply_U.h instead of "startup_reply.h".
	(demuxer): Remove S_ from references to startup_server.

Tue Jul 19 20:36:30 1994  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)

	* init.c (run_for_real): Moved unused var BUF inside #if 0 where used.
	(launch_system): Call proc_set_arg_locations, not proc_setprocargs.

Tue Jul 19 12:44:56 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* Makefile (init): Don't use variable $(link) anymore.

Tue Jul  5 14:21:34 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (launch_system): After terminal driver is running,
	reopen stdin so that we always read through it.  Don't do
	output, because that (for reliability) shouldn't depend
	on the terminal driver.
	(main): Open stdin separately from stdout/stderr.

	* Makefile (SRCS): New variable.

Fri Jul  1 11:19:46 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (run_for_real): Return the task we created.  All callers
	changed.

Tue Jun 21 14:08:37 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (launch_system): Correct first arg to pipes.

Mon Jun 20 15:06:19 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (launch_system): Look for pipes in /hurd/pipes, not
	/bin/pipes.

	* init.c (run_for_real): Comment out old code that prompts user;
	abandon attempt if we can't run something.

	* Makefile (install): Use $(INSTALL_BIN) instead of cp.

Fri Jun 17 00:13:50 1994  Roland McGrath  (roland@geech.gnu.ai.mit.edu)

	* init.c (demuxer): Use S_startup_server instead of startup_server.

Wed Jun 15 18:14:59 1994  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)

	* init.c (launch_system): Start pipes server after starting shell.

	* init.c (run_for_real): New parms ARGS and ARGLEN.  All callers
	changed.

Tue May 24 02:20:55 1994  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)

	* init.c (launch_system): Start the shell before doing proc_setmsgport.

Tue May 24 00:05:43 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (launch_system): Call proc_setmsgport before fsys_init.

Mon May 16 14:43:47 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (reboot_system): Restore bits commented out on May 12;
	the proc bug responsible has been fixed.

Fri May 13 14:59:12 1994  Michael I Bushnell  (mib@churchy.gnu.ai.mit.edu)

	* init.c (launch_system):  Make sure the auth server's proc state
	is correct *before* calling startup_authinit_reply.

Thu May 12 15:13:10 1994  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)

	* init.c (reboot_system): Comment out bits checking to see
	if the procserver has died; they aren't quite right.

	* init.c (S_startup_essential_task): Don't take over the exception
	port of the task right now; this interferes with things too much.

Thu May 12 02:22:08 1994  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)

	* init.c (launch_system): Don't call _hurd_proc_init; just call
	proc_setprocargs ourselves.
	(launch_system): Do proc_setmsgport last.
	(run, run_for_real): Pass argv[0] with name of program.

Mon May  9 14:30:11 1994  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)

	* init.c (init_version): New variable.
	(launch_system): Call proc_register_version; don't call
	proc_setprocargs (which is done by _hurd_proc_init).  Give
	correct argument to _hurd_proc_init.

	* init.c (S_startup_register_version, S_startup_uname): Deleted.

Fri May  6 13:01:04 1994  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)

	* init.c (S_startup_register_version, S_startup_uname):
	New functions (temporary only).

Thu May  5 19:15:39 1994  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)

	* init.c: Include <hurd/msg.h> for prototype of startup_dosync.
	Change return types of MiG stubs to be kern_return_t.
	(S_startup_essential_task): Expect new arg CREDENTIAL and
	validate it.

Thu May  5 07:44:21 1994  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)

	* Makefile: Change uses of $(headers) to $(includedir).