NetBSD/sys/kern
sommerfeld e964d558a7 Fix assorted bugs around shutdown/reboot/panic time.
- add a new global variable, doing_shutdown, which is nonzero if
vfs_shutdown() or panic() have been called.
- in panic, set RB_NOSYNC if doing_shutdown is already set on entry
so we don't reenter vfs_shutdown if we panic'ed there.
 - in vfs_shutdown, don't use proc0's process for sys_sync unless
curproc is NULL.
 - in lockmgr, attribute successful locks to proc0 if doing_shutdown
&& curproc==NULL, and  panic if we can't get the lock right away; avoids the
spurious lockmgr DIAGNOSTIC panic from the ddb reboot command.
 - in subr_pool, deal with curproc==NULL in the doing_shutdown case.
 - in mfs_strategy, bitbucket writes if doing_shutdown, so we don't
wedge waiting for the mfs process.
 - in ltsleep, treat ((curproc == NULL) && doing_shutdown) like the
panicstr case.

Appears to fix: kern/9239, kern/10187, kern/9367.
May also fix kern/10122.
2000-06-10 18:44:43 +00:00
..
exec_aout.c
exec_conf.c
exec_ecoff.c
exec_elf32.c
exec_elf64.c
exec_elf_common.c
exec_script.c
exec_subr.c
genassym.awk
genassym.sh
init_main.c
init_sysent.c
kern_acct.c
kern_allocsys.c
kern_clock.c
kern_descrip.c
kern_exec.c
kern_exit.c
kern_fork.c
kern_kthread.c
kern_ktrace.c
kern_lkm.c
kern_lock.c
kern_malloc.c
kern_ntptime.c
kern_physio.c
kern_proc.c
kern_prot.c
kern_resource.c
kern_sig.c
kern_subr.c
kern_synch.c
kern_sysctl.c
kern_time.c
kern_xxx.c
kgdb_stub.c
Make.tags.inc
Makefile
makesyscalls.sh
subr_autoconf.c
subr_disk.c
subr_extent.c
subr_log.c
subr_pool.c
subr_prf.c
subr_prof.c
subr_rmap.c
subr_xxx.c
sys_generic.c
sys_process.c
sys_socket.c
syscalls.c
syscalls.conf
syscalls.master
sysv_ipc.c
sysv_msg.c
sysv_sem.c
sysv_shm.c
tty_conf.c
tty_pty.c
tty_subr.c
tty_tb.c
tty_tty.c
tty.c
uipc_domain.c
uipc_mbuf2.c
uipc_mbuf.c
uipc_proto.c
uipc_socket2.c
uipc_socket.c
uipc_syscalls.c
uipc_usrreq.c
vfs_bio.c
vfs_cache.c
vfs_cluster.c
vfs_getcwd.c
vfs_init.c
vfs_lockf.c
vfs_lookup.c
vfs_subr.c
vfs_syscalls.c
vfs_vnops.c
vnode_if.c
vnode_if.sh
vnode_if.src