Commit Graph

15161 Commits

Author SHA1 Message Date
thorpej 41a9e723e3 Adopt for new file system and root spec grammar. 1997-01-31 05:46:09 +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 7edaeb36ce Oops, remove straggler NFSCLIENT. 1997-01-31 05:20:06 +00:00
thorpej e0145dbc88 NFSCLIENT -> NFS 1997-01-31 05:18:51 +00:00
thorpej 739f23a219 This file is obsolete; this information is now generated by config(8). 1997-01-31 05:12:49 +00:00
thorpej 593fdd462d NFSCLIENT -> NFS 1997-01-31 03:06:06 +00:00
thorpej 727078d31e - Add ffs_mountroot to ffs_vfsops.
- Only attempt to mount a root FFS on a DV_DISK class device.
1997-01-31 03:05:31 +00:00
thorpej 12f087b37a - Add external declarations for globals used by the setroot() code.
- Prototype the mountroothook functions here.
1997-01-31 03:04:31 +00:00
thorpej 5d55d65b47 Define the kern.root_device sysctl node. 1997-01-31 03:03:29 +00:00
thorpej 1010921e24 - Add a (*vfs_mountroot)() entry to struct vfsops, used by the
vfs_mountroot() function.
- Prototype vfs_mountroot() and vfs_getopsbyname().
1997-01-31 03:02:57 +00:00
thorpej 9dcd3dd0d5 - Declare a structure to map device names to block device major numbers,
used by the new machine-independent setroot().
- Prototype setroot() and swapconf() here.
1997-01-31 03:01:50 +00:00
thorpej 647fa23dc4 - Add nfs_mountroot to nfs_vfsops.
- Only attempt to mount NFS root on a DV_IFNET class device.
- If nfs_boot_init() failes, return the error code to the caller.
1997-01-31 03:00:31 +00:00
thorpej dc33841893 NFSCLIENT -> NFS. 1997-01-31 02:58:48 +00:00
thorpej 2ec3e70ff4 - Don't look for a "suitable interface"; we're now given the name of the
network interface to use.
- If any part of the NFS root mount process fails, don't panic.
  Simply return the appropriate error and let the caller recover.
1997-01-31 02:57:31 +00:00
thorpej 68de7ca719 - Implement vfs_mountroot(). This function is called my main() to
mount the root file system.  If the operator specified the root
  file system type in the kernel configuration file, attempt to
  mount that file system type on the root device.  If the root
  file system type was wildcarded (or unspecified), try all of
  the file systems statically built into the kernel until one
  succeeds.  If no file systems succeed, return an error.  The
  system will recover from this condition.
- Implement vfs_getopsbyname().  This function returns the file
  system ops vector given a file system name.
1997-01-31 02:50:36 +00:00
cgd d3f790f3d0 add 'major' declaration for wd 1997-01-31 02:49:57 +00:00
cgd 3603b076e1 add major and minor numbers for 'wd', slight clean 1997-01-31 02:49:35 +00:00
thorpej e101942fa0 NFSCLIENT -> NFS 1997-01-31 02:36:24 +00:00
thorpej 1005d16030 Syscalls.master changed, regen. (NFSCLIENT -> NFS) 1997-01-31 02:35:52 +00:00
thorpej 55ee7ceeb8 NFSCLIENT -> NFS 1997-01-31 02:34:23 +00:00
thorpej ec15ba06cb Add a sysctl node "kern.root_device", which contains the external
name of the device that root was mounted on (e.g. "sd0").
1997-01-31 02:33:59 +00:00
thorpej 0408b501ce - Implement a new machine-independent setroot() function, mostly derived
from the version used by NetBSD/alpha, with several changes by me.
  Support for asking for root device and root file system type on any
  kernel, obsoleting "options GENERIC".
- Make my mountroothook implementation used by the sparc and x68k
  ports machine-independent, and use it here.  Mountroothooks allow
  devices to execute special functions before being mounted as the
  root device (such as ejecting the floppy and prompting for a new
  floppy disk).
- Make swapconf() machine-independent.  It was identical on all ports.
1997-01-31 02:31:33 +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
thorpej f41783799b - Add cd9660_mountroot to cd9660_vfsops.
- Only attempt to mount root if root_device is a DV_DISK class device.
1997-01-31 02:23:25 +00:00
thorpej 578626f7ea nfsclient -> nfs 1997-01-31 02:21:33 +00:00
thorpej 8e50039b7c Syscalls.master changed, regen. (NFSCLIENT -> NFS) 1997-01-31 02:20:58 +00:00
thorpej 90b1ce5234 NFSCLIENT -> NFS 1997-01-31 02:20:03 +00:00
thorpej bf69384ef4 Syscalls.master chagned, regen. (NFSCLIENT -> NFS) 1997-01-31 02:19:34 +00:00
thorpej 83b3ffe116 NFSCLIENT -> NFS 1997-01-31 02:18:54 +00:00
thorpej b266dedfc8 Syscalls.master changed, regen. (NFSCLIENT -> NFS) 1997-01-31 02:18:26 +00:00
thorpej 12cb3aaf21 NFSCLIENT -> NFS 1997-01-31 02:17:46 +00:00
thorpej 2525eee053 Use new machine-independent mountroothook code. 1997-01-31 02:15:54 +00:00
thorpej e37a1f5794 Use new machine-independent setroot() and mountroothook code. 1997-01-31 02:15:09 +00:00
thorpej be49bd8254 Update for new file system and root spec grammar. 1997-01-31 02:14:19 +00:00
thorpej 9b683dc125 Use new machine-independent setroot(). 1997-01-31 02:13:40 +00:00
thorpej 003dad8fdd Pass a struct device ** down to the functions that find the boot device. 1997-01-31 02:12:31 +00:00
thorpej fc9c10afb7 Update prototypes to match new calling convention of functions that
find the boot device.
1997-01-31 02:11:51 +00:00
thorpej 2b43c7eab7 Adopt for new file system and root spec grammar. 1997-01-31 02:10:33 +00:00
thorpej bb87691950 Use new machine-independent setroot(). 1997-01-31 02:08:50 +00:00
thorpej 95380a8478 Adopt for new file system and root spec grammar. 1997-01-31 02:08:19 +00:00
thorpej 801f7e1a0e Use new machine-independent setroot() and mountroothook code. 1997-01-31 02:07:29 +00:00
thorpej f159c829df Adopt for new file system and root spec grammar. 1997-01-31 02:06:41 +00:00
thorpej 304c785022 Find the root device in a much more sane way. Also, remove all of the
code that determines the root file system type.  This is now done in
machine-independent code, much differently.
1997-01-31 02:05:54 +00:00
thorpej 773c77b683 Use the new machine-independent setroot(). 1997-01-31 02:04:43 +00:00
thorpej 1a0f586e08 Declare booted_device and booted_partition as "extern". 1997-01-31 02:04:14 +00:00
thorpej bd1a87986a Adopt for new file system and root spec grammar. 1997-01-31 02:03:38 +00:00
thorpej 65e736fcae Use new machine-independent setroot(). 1997-01-31 02:02:56 +00:00
thorpej 08dafb1339 Add a sick little hack to glue old-config-pmax-scsi-stuff into the
alldevs list.  This is required for the new machine-independent setroot().
1997-01-31 02:00:56 +00:00
thorpej 1b341f7e70 Update for new file system and root spec grammar. 1997-01-31 01:59:09 +00:00
thorpej e4d6c27735 Use new machine-independent setroot(). 1997-01-31 01:58:44 +00:00
thorpej 16aa3354f7 Adopt for new file system and root spec grammar. 1997-01-31 01:58:17 +00:00
thorpej 0735d8d32e Use new machine-independent setroot(). 1997-01-31 01:57:51 +00:00
thorpej fcb565dde2 Adopt for new file system and root spec grammar. 1997-01-31 01:57:08 +00:00
thorpej 70653a472d bootdv -> booted_device 1997-01-31 01:56:03 +00:00
thorpej 573e68b745 Use new machine-independent setroot(). 1997-01-31 01:55:40 +00:00
thorpej 0e3acd811d bootdv -> booted_device 1997-01-31 01:53:06 +00:00
thorpej 3fd4de4cd9 Adopt for new file system and root spec grammar. 1997-01-31 01:52:38 +00:00
thorpej 5f46d3130a Use new machine-independent setroot(). 1997-01-31 01:51:17 +00:00
thorpej 8eae9eaaec Adopt for new file system and root spec grammar. 1997-01-31 01:50:46 +00:00
thorpej 8763a04e25 Use the new machine-independent setroot(). 1997-01-31 01:49:41 +00:00
thorpej 8496115a38 Adopt for new file system and root spec grammar. 1997-01-31 01:48:24 +00:00
thorpej 3e47546598 Use new machine-independent setroot() 1997-01-31 01:47:25 +00:00
thorpej 24c607fc32 NFSCLIENT -> NFS 1997-01-31 01:46:49 +00:00
thorpej 1c705f35fd Use new machine-independent setroot(). 1997-01-31 01:46:23 +00:00
thorpej e752da4888 Adopt for new file system and root spec grammar. 1997-01-31 01:45:40 +00:00
thorpej f1065bcb07 Garbage-collect unused bootdev global. 1997-01-31 01:44:13 +00:00
thorpej 16d4fd0ac8 Use the new machine-independent setroot(). 1997-01-31 01:43:37 +00:00
thorpej aea810c379 Adopt for new file system and root spec grammar. 1997-01-31 01:42:34 +00:00
thorpej 4e686aa6ae Don't locally declare root_device; it's not used in the MI kernel. 1997-01-31 01:41:37 +00:00
thorpej d5257c641b Use the new machine-independent setroot() 1997-01-31 01:40:40 +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
gwr d9267b93fd Forgot to initialize cs->cs_rr0_dcd and fiends in attach. 1997-01-31 00:07:06 +00:00
scottr fc20c2eb8f Add missing major number decls, from Klaus Klein (closes PR 3165). 1997-01-30 22:11:19 +00:00
tls dff9c0904d Do not always use KMEMSTATS, it's a performance lose 1997-01-30 22:07:44 +00:00
cgd f89ffa1fe4 don't clobber IER in cominit(). (suggested by mycroft.) 1997-01-30 19:42:33 +00:00
scottr 13802e3a85 Add DIOVERBOSE per Jason; clean up formatting for some options. 1997-01-30 18:33:52 +00:00
thorpej 5885fe6b78 This file is now obsolete. 1997-01-30 17:29:23 +00:00
oki 7195b16867 :: --> : 1997-01-30 16:03:55 +00:00
thorpej 570522c72c Clean up #includes. 1997-01-30 10:32:51 +00:00
thorpej 5906c26c8b Commit this to the right place, this time.
The boot blocks do a primitive form of autoconfiguration.  Duplicate some
of the old config strcutures for the benefit of the boot blocks; they
don't need something as flexible as the kernel does.
1997-01-30 10:31:44 +00:00
tls af543e23ae remove ability to mangle namei cache 1997-01-30 10:29:24 +00:00
tls a6b42c4d73 fix a large number of braindead unconditional #defines 1997-01-30 10:16:18 +00:00
thorpej 40d51256bb These files are no longer needed. 1997-01-30 10:00:39 +00:00
thorpej 5e781164af Update for new-style config. 1997-01-30 09:58:57 +00:00
thorpej add93ce69e Garbage-collect some uneeded stuff now that we're new config only. 1997-01-30 09:55:45 +00:00
tls d0c43309b5 add support for noatime mount flag 1997-01-30 09:52:26 +00:00
matthias 1370131ffd Add scripts and documentation for a new method to create assym.h files.
With the kern/genassym.sh script HOSTED_CC is no longer used to create
assym.h files. This should make crosscompilation easier.
1997-01-30 09:37:20 +00:00
thorpej d26d94a7a5 Regen to clear up RCS id snafu. 1997-01-30 09:20:42 +00:00
thorpej cb63bb9de5 Garbage-collect all old-style autoconfiguration support; it is no
longer supported.  The hp300 port uses new config now.
1997-01-30 09:18:33 +00:00
thorpej 9bb27910a9 Convert to new-style autoconfiguration; old-style config is no longer
supported.
1997-01-30 09:14:10 +00:00
thorpej f19d55d659 - Garbage-collect the old-style configuration glue.
- Make sure we don't get interrupts in dcmselftest().
1997-01-30 09:11:24 +00:00
thorpej f5bb637c10 - Convert these drivers to new-style autoconfiguration. Old-style
config is no longer supported.
- Use a much more obvious SCSI job queueing scheme.
1997-01-30 09:08:55 +00:00
thorpej 365324ec10 - Convert these drivers to new-style autoconfiguration. Old-style
configuration is no longer supported.
- Use a much more obvious HP-IB job queueing scheme.
1997-01-30 09:06:51 +00:00
thorpej d49c71cb8a - Use indicies, rather than pointer arithmetic, to track DMA chain
segments.
- Use a much more obvious DMA job queueing scheme.
- Fixup some debugging code.
1997-01-30 09:04:33 +00:00
thorpej 7bfe4e11c4 Garbage-collect old-style autoconfiguration glue. 1997-01-30 09:00:21 +00:00
thorpej 743140bb51 Garbage-collect old-style autoconfiguration code. Adopt boot device
detection code to new-style autoconfiguration.
1997-01-30 08:59:29 +00:00
tls e9a5b29d40 add #ifdef KMEMSTATS around variable otherwise unused; now compiles with KMEMSTATS turned off. 1997-01-30 06:50:46 +00:00
thorpej 9a815ed696 A performance optimization, inspired by a conversation with Thor Simon:
- Keep a freelist of component buffer headers, defaulting
	  to 8 headers per component (tunable with the CCDNBUF
	  kernel compile option).
	- When allocating a component buffer, try to pull a header
	  off the freelist first, falling back on MALLOC() if the
	  freelist is empty.  Use MALLOC() rather than malloc(),
	  because it will attempt to short-cut the allocation before
	  actually making a full-blown malloc() call.
	- Keep statistics on how many component buffer headers have
	  been allocated and how many of those allocations have
	  resulted in freelist misses.

With these changes, I observed measurable decreases in system and
wall clock time on operations on an 8G ccd, as well as a measurable
drop in the time spent in ccdbuffer() (measured with kernel profiling).
1997-01-30 04:00:52 +00:00
thorpej bb60822446 Fix OBOB in ccdopen() partition range check.
From Klaus Klein <kleink@layla.inka.de>, PR #3161.
1997-01-30 03:32:56 +00:00
is 3d42605db3 Correct yet another typing error. 1997-01-29 17:19:35 +00:00
is 3d43ed097b fixed my own stupid typing error. 1997-01-29 17:12:51 +00:00
thorpej b21c166228 ioctl cmd arguments are u_long, not int. Pointed out by
Fred L. Templin <templin@nas.nasa.gov>
1997-01-29 02:16:23 +00:00
mycroft c4062005b4 Oops! Forgot to pop an argument to npxintr(). 1997-01-29 01:07:38 +00:00
pk 01bd8a8ca8 Initialize `f_offset'. 1997-01-28 09:41:03 +00:00
mark b371b8a271 Prototype main(). 1997-01-28 05:02:30 +00:00
mark 01b365e7a5 Use <machine/conf.h> for prototypes of the block and character device
functions.
1997-01-28 05:00:03 +00:00
mark a497e39048 Fix the declarations of the interrupt handlers to accept void * pointers
as the only argument and cast this as appropriate now that the function
pointers to the interrupt registration functions are fully prototyped.
Use <machine/conf.h> for the declarations of the device driver entry
points.
1997-01-28 04:55:15 +00:00
mark 844495ceb6 Use machine/conf.h for prototypes for device entry points.
Declare the cpuioctl() cmd argument as u_long rather than int.
1997-01-28 04:36:14 +00:00
mark ed854d0d12 Fix the declarations of the interrupt handlers to accept void * pointers
as the only argument and cast this as appropriate now that the function
pointers to the interrupt registration functions are fully prototyped.
1997-01-28 04:20:58 +00:00
mark ad1a9d7854 Now that the generic sfas code works fine under interrupts, disable polling
behaviour of the driver.
1997-01-28 04:10:47 +00:00
mark e1460d785b Add prototypes for match and attach functions. 1997-01-28 04:08:21 +00:00
mikel 2ef9229953 remove superflous DESTDIR ref; PR 3143 1997-01-28 04:01:41 +00:00
gwr c7fd1435c6 Update for new struct member names in db_regs_t. 1997-01-27 23:07:04 +00:00
gwr b0f4781a3d Include <machine/frame.h> and typedef db_regs_t using struct trapframe
(instead of replicating trapframe here by a different name).  Update the
macros that refer to members of db_regs_t to use the trapframe members.
1997-01-27 23:02:55 +00:00
gwr 09fa19ebb5 Protect this agains multiple includes so it can be included by db_machdep.h 1997-01-27 22:58:45 +00:00
gwr 3cf095df8d The sunmon_* declarations are now in machdep.h 1997-01-27 22:55:07 +00:00
gwr 9f0e342d0c Now getting these from arch/sun3 1997-01-27 22:51:40 +00:00
gwr 5f1abbe73b Add OBIO_EMULEX_SCSI 1997-01-27 22:42:44 +00:00
gwr 7f16997d26 Replace sunmon.h with machdep.h 1997-01-27 22:35:03 +00:00
gwr 2e2e2a855c Change "machdep.h" to <machine/machdep.h> 1997-01-27 22:33:34 +00:00
gwr c1ccab6daa Get trap.c, vector.c from arch/sun3/sun3 1997-01-27 22:26:50 +00:00
gwr 8fddc5d688 Kill sunmon.h 1997-01-27 22:24:03 +00:00
gwr 55cc627131 Let bus_mapin return void* 1997-01-27 22:23:38 +00:00
gwr 0352f52a7a Kill sunmon.h; add sun "code names" (Hydra, Pegasus). 1997-01-27 22:22:51 +00:00
gwr 21da6a34c0 Add machdep.h; use sunmon_abort() instead of mon_exit_to_mon(). 1997-01-27 22:16:37 +00:00
gwr 39d7966a63 Kill sunmon.h 1997-01-27 22:15:06 +00:00
gwr 530f35200b kill type cast 1997-01-27 22:14:19 +00:00
gwr 317b22ec3f Let bus_mapin() return void * 1997-01-27 22:12:27 +00:00
gwr 4a4af629f2 Just declare the sunmon_* functions here. No need for sunmon.h 1997-01-27 22:09:50 +00:00
gwr 46cb437677 Nuke sunmon.h, add machdep.h 1997-01-27 21:57:44 +00:00
gwr cdac61715c Just declare the sunmon_* functions here. No need for sunmon.h 1997-01-27 21:48:37 +00:00
pk 772b81afe0 In cpu_startup(), after configure() returns, re-zero proc0's user area.
This largely nullifies the effect of proc0's stack running into the
user area during auto-configuration.
1997-01-27 21:18:17 +00:00
gwr 9d2ab17c95 Include <sun3/sun3/vector.h> 1997-01-27 20:54:14 +00:00
gwr ca8e9852d2 Use sunmon_abort() instead of mon_panic(), etc. 1997-01-27 20:50:36 +00:00
gwr c8b0ad744c Changed "machdep.h" to <machine/machdep.h> 1997-01-27 20:43:51 +00:00
gwr feaca6a0df Let idprom_init() have void return. 1997-01-27 20:36:50 +00:00
gwr 9b52402303 Use sunmon_abort() instead of mon_panic()
Let idprom_init() have void return.
1997-01-27 20:35:58 +00:00
gwr 0942e69a7b Let bus_mapin() return void *; moved machdep.h 1997-01-27 19:56:33 +00:00
gwr ced023ffd8 Let bus_mapin() return void * 1997-01-27 19:54:53 +00:00
gwr f8d04bcffb Update comment about si_obio_options 1997-01-27 19:54:06 +00:00
gwr 340699a2b1 Fix copyrights (/s/REGENTS/FOUNDATION/) 1997-01-27 19:40:46 +00:00
gwr 8e207f0cda Eliminate reference to "romp" macro. Moved machdep.h, Fix copyright. 1997-01-27 19:19:59 +00:00
gwr ded84699df Use stuff from <sun3/sun3/sunmon.h>
Setup the msgbufp here like others.
Do vm_map_protect() on kernel text.
1997-01-27 17:45:50 +00:00
gwr 13cb0851cb Implement _pmap_fault() (does the VA check and calls pmap_fault_reload).
Correct VA range checks in pmap_protect and elsewhere (lower limit of
kernel VA for our purposes is virtual_avail, not VM_MIN_KERNEL_ADDRESS).
Make pmap_activate flush the cache (only if needed).  Fix copyright.
1997-01-27 17:23:31 +00:00
gwr a2bebc4a6b Sync. with the sun3x version (now the same, so sun3x can use this).
Update exframesize[] array from hp300, comments, misc. cleanup, etc.
Replace machine-dependent section that called pmap_fault_reload()
with a simple call to the new _pmap_fault() macro which does any
of that MD stuff that might be necessary.
1997-01-27 17:19:22 +00:00
gwr 39258ec971 Remove code that is now in sun3/sunmon.c (shared with sun3x)
Rename some functions (remove sun3 prefix).  Fix copyright.
1997-01-27 17:14:34 +00:00
gwr fe9fba89df Rename some of the sun3-specific things to be closer to the sun3x version.
Call pmap_activate with just one arg (the pmap), and do the cache flush
in there (if needed).
1997-01-27 17:11:36 +00:00
gwr 65e048e41c Reorder to be somewhat more "top-down" (cosmetic).
Fix copyright.
1997-01-27 17:04:12 +00:00
gwr e22c9eba99 Remove unused PMAP_ACTIVATE/PMAP_DEACTIVATE macros.
Add new _pmap_fault macro used in trap.c
Declare pmap_activate() correctly.
1997-01-27 17:02:14 +00:00