Commit Graph

132 Commits

Author SHA1 Message Date
thorpej 93ea1946f0 Implement a new kernel thread, the "reaper", which performs the task
of freeing the VM resources once a process has exited.  A valid thread
must do this work, as doing so may block in a multi-processor environment.
1998-09-08 23:57:58 +00:00
thorpej 26b8f5c4ac Use the pool allocator and "nointr" pool page allocator for file structures. 1998-08-31 23:55:37 +00:00
eeh a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
perry 275d1554aa Abolition of bcopy, ovbcopy, bcmp, and bzero, phase one.
bcopy(x, y, z) ->  memcpy(y, x, z)
ovbcopy(x, y, z) -> memmove(y, x, z)
   bcmp(x, y, z) ->  memcmp(x, y, z)
  bzero(x, y)    ->  memset(x, 0, y)
1998-08-04 04:03:10 +00:00
thorpej a4c7bab10e Use the pool allocator for sockets. 1998-08-02 04:53:11 +00:00
thorpej c56c24f4fd Initialize the mbuf allocator _before_ autoconfiguration; it might be
called when devices attach, take two.

Note that it is necessary that mbinit() NOT allocate memory, since it
is called before mb_map is created.  This is not a problem with the
pool allocator that is now used for mbufs and mbuf clusters.
1998-08-01 01:36:35 +00:00
thorpej e8b92fa131 Oops, back out previous. I need to attack that problem differently. 1998-08-01 01:20:43 +00:00
perry 730baa7431 fix sizeofs so they comply with the KNF style guide. yes, it is pedantic. 1998-07-31 22:50:48 +00:00
thorpej 17e88cf50e Initialize the mbuf allocator _before_ autoconfiguration; it might be
called when devices attach.
1998-07-31 21:59:55 +00:00
thorpej 6b781d156f defopt NFSSERVER 1998-06-25 22:17:36 +00:00
mycroft ca63148e3d Oops; forgot to update prototype. 1998-03-30 06:18:05 +00:00
mycroft f1ed6cae04 Argument to main() is no longer used. 1998-03-30 06:15:44 +00:00
thorpej b436157e65 Make proc0 use the statically-allocate vmspace0 again, and make it use
the kernel's pmap, since proc0 (and other that share its address space)
are kernel-only processes, and should never contain userspace mappings.

This makes it easier to detect errors, like entering user mappings
for kernel processes, in pmap modules, and makes some sense, considering
that kernel processes are really just "thread contexts" for the kernel.
1998-03-27 01:52:01 +00:00
thorpej 272d8a4a38 Process 2 (the pagedaemon) always runs in kernel space, so share VM
space with proc0.
1998-03-22 18:22:07 +00:00
fvdl e5bc90f40c Merge with Lite2 + local changes 1998-03-01 02:20:01 +00:00
thorpej b0b3787d14 Include the NFS option header. 1998-02-19 00:47:02 +00:00
thorpej d2924ae854 Prevent the session ID from disappearing if the session leader exits
(thus causing s_leader to become NULL) by storing the session ID separately
in the session structure.  Export the session ID to userspace in the
eproc structure.

Submitted by Tom Proett <proett@nas.nasa.gov>.
1998-02-14 00:37:26 +00:00
mrg d90485202c - add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
mrg 1a8c7604f4 initial import of the new virtual memory system, UVM, into -current.
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)
1998-02-05 07:59:28 +00:00
mrg a20d56e92e add new version of non contiguous memory code, written by chuck cranor,
called "MACHINE_NEW_NONCONGIG".  this is required for UVM, the new VM
system (also written by chuck) that is coming soon.  adds new functions:
	vm_page_physload() -- tell the VM system about an area of memory.
	vm_physseg_find() -- returns index in vm_physmem array that this
		address is in.
and several new versions of old functions/macros defined in vm_page.h.

this is the MI portion.  sparc, and then later i386 portions to come.
all other ports need to change to this ASAP!  (alpha is already being
worked on)
1998-01-08 11:36:16 +00:00
thorpej 974b59d07c Happy new year! 1998-01-07 00:41:43 +00:00
thorpej 052b639ac1 Clean up the forking of init and the pagedaemon slightly: call fork1()
directly (which provides a pointer to the new process).
1998-01-06 21:18:00 +00:00
thorpej c2768af3d4 Garbage-collect cpu_set_init_frame(); it hasn't been needed for some time
now.
1998-01-06 08:06:45 +00:00
thorpej 5703397593 Initialize proc0's file descriptor table with fdinit1(). 1998-01-05 04:52:48 +00:00
mycroft 04daee4f9c Add const where appropriate. 1997-10-19 02:00:19 +00:00
thorpej 73b56bd5b0 Display The NetBSD Foundation, Inc.'s copyright notice at boot time. 1997-10-17 21:40:00 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
mycroft 61a9f1c6a6 GC pageproc and bclnlist. 1997-10-10 08:19:41 +00:00
explorer dac3eb2c9b make /dev/random standard, per message from Jason 1997-10-09 23:53:01 +00:00
explorer d8e4695634 add hooks to initialize the random driver 1997-10-09 23:17:37 +00:00
mycroft 16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
thorpej e94c4d3f1c Call cpu_dumpconf() after cpu_rootconf(). 1997-06-14 04:18:34 +00:00
mrg 295af85e9e remove swap configuration. 1997-06-12 17:12:17 +00:00
gwr 09da7e273e Eliminate vmspace.vm_pmap and all references to it unless
__VM_PMAP_HACK is defined (for temporary compatibility).
The __VM_PMAP_HACK code should be removed after all the
ports that define it have removed all vm_pmap references.
1997-05-16 21:39:50 +00:00
gwr 71e43d14ab Move findroot/setroot stuff from configure() to cpu_rootconf(). 1997-03-26 22:38:40 +00:00
thorpej 6dc3c24a7c Add missing \n in printf format for "cannot mount root" error message.
Pointed out by cgd@netbsd.org
1997-02-02 02:55:06 +00:00
cgd 6384f7c322 fix check_console() changes:
* prototype it before it is used (several ports compile with
  -Wstrict-prototypes -Wmissing-prototypes), so this is _necessary_.
* conform to C syntax (yes, that's right, it wouldn't parse).
* make error check less error-prone, + style fixups.
1997-01-31 05:25:24 +00:00
thorpej 883ccf99b6 - NFSCLIENT -> NFS
- Run mountroot hooks before we attempt to mount the root device, and
  destroy mountroot hooks after the root file system has been sucessfully
  mounted.
- Don't panic if we can't mount root.  Instead, set RB_ASKNAME and
  call setroot(), which will prompt the operator for the root device
  and file system type.
1997-01-31 02:25:47 +00:00
mouse b5657b655d Oops, forgot the #include. 1997-01-31 00:50:38 +00:00
mouse f2e82f1145 Apply the interim fix from PR 2236, reformatted and a comment added.
Not a real fix, but it should help until we get a real fix done.
1997-01-31 00:47:12 +00:00
cgd e7af2a8237 * catch up with system call argument type fixups/const poisoning.
* Fix arguments to various copyin()/copyout() invocations, to avoid
  gratuitous casts.
* Some KNF formatting fixes
1996-12-22 10:21:06 +00:00
thorpej f02e8b3cf0 Make NFSSERVER work without NFSCLIENT. This is achieved by splitting
the client and server/shared data initialization into separate functions,
and calling the server/shared initialization directly from main().
Problem noted in PR #1308 (Kenneth Stailey) and PR #1780 (Chris Demetriou).
Fix suggested in PR #1780 by Chris Demetriou, and munged a bit by me,
and OK'd by Frank van der Linden <fvdl@netbsd.org>.
1996-12-03 00:22:43 +00:00
christos f443b89c92 backout previous kprintf change 1996-10-13 02:32:29 +00:00
christos 60d201973e printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:46:11 +00:00
thorpej 4a23efc7bc Fix botch in netbsd-1-2 merge (multiple inclusion of <sys/tty.h>),
pointed out by Jonathan Stone <jonathan@DSG.Standford.EDU>.
1996-10-10 00:27:41 +00:00
thorpej f2e79979ad Merge the netbsd-1-2 branch back into the mainline. 1996-10-09 00:59:15 +00:00
scottr d2be4a69c2 Expand tab in copyright message; it loses on some consoles. 1996-10-05 06:32:43 +00:00
mrg ade39d6cb2 call tty_init(). 1996-05-29 19:10:16 +00:00
christos 4ef330b934 remove include of <sys/cpu.h> 1996-04-22 01:38:12 +00:00
cgd e3c70ced5f call config_init() before autoconfiguration, to initialize alldevs and
allevents lists.
1996-04-04 00:26:28 +00:00