Commit Graph

21622 Commits

Author SHA1 Message Date
mycroft
0e4a7ffbe0 Regen. 1998-02-20 18:09:29 +00:00
mycroft
26c238db7d Linux's getsid(2) does in fact return a pid, not a pointer. 1998-02-20 18:09:04 +00:00
frueauf
5e3035adb1 include <unistd.h> for optarg/optind. 1998-02-20 09:19:11 +00:00
mycroft
28e8037334 Fix missing newline in time zone warning. 1998-02-20 07:22:14 +00:00
pk
ed1d38cfe3 Add "storage" arguments (all NULL) to pool_create() and pool_prime(). 1998-02-19 23:56:37 +00:00
pk
201f7cf6b4 Add option to use "static" storage provided by the caller.
From Matthias Drochner.
1998-02-19 23:51:48 +00:00
mycroft
7aad596fa6 Fix formatting glitch. 1998-02-19 23:21:33 +00:00
thorpej
17eae81dc5 Use the generic NetBSD/mips crash dump code. 1998-02-19 23:13:33 +00:00
thorpej
2f74d0222a savectx() is prototyped in <mips/cpu.h> 1998-02-19 23:10:18 +00:00
thorpej
0743f83f64 Implement new style crash dumps for NetBSD/mips, lifted from NetBSD/alpha. 1998-02-19 23:09:30 +00:00
thorpej
cf06aa7c03 Prototype dumpsys() and savectx(). 1998-02-19 23:07:14 +00:00
thorpej
c5862712ae New crash dump format definition for NetBSD/mips. 1998-02-19 23:06:11 +00:00
thorpej
50f58080f4 Rewrite rzdump(); the previous one was completely broken. 1998-02-19 23:04:41 +00:00
gwr
ce396c52e6 can not use star 1998-02-19 22:50:04 +00:00
gwr
43cbb05833 Support MACHINE_NEW_NONCONTIG 1998-02-19 22:21:28 +00:00
mycroft
6ad2876b5a Similar changes to com driver:
Arrange to call com_break() and com_modem() at splserial().
It's simpler this way.  Really.
1998-02-19 21:26:10 +00:00
leo
c281cb0e23 Update Hades PCI support:
- Initialize the PCI bus and hand-out mem and i/o addresses. (there is
    still lots of room for improvements here...)
  - Implement the interupt functions
1998-02-19 16:16:51 +00:00
drochner
0587f7e6e7 add COMPAT_386BSD_MBRPART option 1998-02-19 14:21:57 +00:00
drochner
ce380ad936 enable "old partition ID" compatibility per default 1998-02-19 14:18:36 +00:00
drochner
ad33d83f8b Add compatibility code (#ifdef COMPAT_386BSD_MBRPART): look for 386BSD
partition ID if the NetBSD ID was not found.
Cleanup, use definitions from <machine/disklabel.h>
1998-02-19 14:15:38 +00:00
drochner
411e77cac8 Add compatibility code (#ifdef COMPAT_386BSD_MBRPART): look for 386BSD
partition ID if the NetBSD ID was not found.
1998-02-19 14:12:48 +00:00
drochner
7d1b6dbcbf -define new own partition ID for NetBSD (0xa9)
-protect structure definitions from inclusion in assembler files
1998-02-19 14:10:34 +00:00
drochner
b3019be867 Use an own NetBSD MBR partition type. Add compatibility code for fallback
to the old 386BSD ID (#ifdef COMPAT_386BSD_MBRPART).
basically from Duncan McEwan <duncan@MCS.VUW.AC.NZ>
1998-02-19 14:07:33 +00:00
mycroft
84a72d6ff4 Remove stray label from last change. 1998-02-19 09:33:33 +00:00
mycroft
06ec9f646f Arrange to call com_break() and com_modem() at splserial().
It's simpler this way.  Really.
1998-02-19 09:23:38 +00:00
thorpej
69c27a1dfb Make sure the compile directory is always there. 1998-02-19 09:17:56 +00:00
thorpej
c3a02725ea Use a reasonable default for NKMEMCLUSTERS. Previous default value wouldn't
run multi-user for very long at all, and every kernel configuration file
overrides it!
1998-02-19 06:40:09 +00:00
thorpej
772da350d4 Disable the message buffer during crash dumps by clearing msgbufenabled,
not msgbufmapped.
1998-02-19 04:18:30 +00:00
thorpej
dc4fe3d32d Regen: makesyscalls.sh changed. 1998-02-19 03:34:15 +00:00
thorpej
95cd40bf13 Regen; makesyscalls.sh changed 1998-02-19 03:31:11 +00:00
thorpej
78a9bfbb1c Argh, protect userland from includes in the syscall names file. 1998-02-19 03:30:24 +00:00
thorpej
5837cc6b07 Update copyright (sigh, should have done this long ago). 1998-02-19 02:36:42 +00:00
cgd
0924c4443d Make sure the reason that NOLINT is set is documented. Additionally
in places where it should be set (or has to be set right now), do so.
1998-02-19 02:17:05 +00:00
thorpej
1e3e1bfe09 Include the NFS option header. 1998-02-19 00:55:04 +00:00
thorpej
95e2e3b91b Include the LFS option header. 1998-02-19 00:54:39 +00:00
thorpej
2146a2ed29 Include the NFS option header. 1998-02-19 00:54:13 +00:00
thorpej
2fc4c3415a Include the UNION option header. 1998-02-19 00:53:46 +00:00
thorpej
990ca1baa0 Regen; syscalls.master and makesyscalls.sh changed. 1998-02-19 00:53:17 +00:00
thorpej
58fff16650 Include the NFS and LFS option headers. 1998-02-19 00:52:14 +00:00
thorpej
b0b3787d14 Include the NFS option header. 1998-02-19 00:47:02 +00:00
thorpej
7db8266c3d Regen; syscalls.master and makesyscalls.sh changed. 1998-02-19 00:46:39 +00:00
thorpej
e533010083 Include the NFS option header. 1998-02-19 00:46:02 +00:00
thorpej
2ea9f5648e regen; makesyscalls.sh changed 1998-02-19 00:45:36 +00:00
thorpej
054d3ec0b2 Change a comment to reflect new makesyscalls.sh behavior. 1998-02-19 00:45:12 +00:00
thorpej
d428ef497f regen; syscalls.master and makesyscalls.sh changed. 1998-02-19 00:44:20 +00:00
thorpej
217cf602ae Include the NFS option header. 1998-02-19 00:43:56 +00:00
thorpej
ffa2f66af1 regen; makesyscalls.sh changed 1998-02-19 00:42:35 +00:00
thorpej
db2bdf86a9 Change a comment to reflect new makesyscalls.sh behavior. 1998-02-19 00:42:15 +00:00
thorpej
e94f57bd08 regen; makesyscalls.sh changed 1998-02-19 00:41:47 +00:00
thorpej
c0ef23f235 Change a comment to reflect new makesyscalls.sh behavior. 1998-02-19 00:41:12 +00:00
thorpej
85363653a7 regen; makesyscalls.sh changed. 1998-02-19 00:40:44 +00:00
thorpej
9f6ec3eb67 Change a comment to reflect new makesyscalls.sh behavior. 1998-02-19 00:40:25 +00:00
thorpej
98193ef4fd makesyscalls.sh changed; regen. 1998-02-19 00:39:25 +00:00
thorpej
a4db5a6784 Update a comment to reflect new makesyscalls.sh behavior. 1998-02-19 00:37:43 +00:00
thorpej
6f0c98c0d4 Regen: syscalls.master and makesyscalls.sh changed. 1998-02-19 00:36:33 +00:00
thorpej
fcb761ac95 Include the NFS option header. 1998-02-19 00:36:03 +00:00
thorpej
00fa9be52f Include the UNION option header. 1998-02-19 00:35:26 +00:00
thorpej
258bdac2d5 Include the MFS option header. 1998-02-19 00:32:11 +00:00
thorpej
1870f7af79 Include MFS option header. 1998-02-19 00:31:08 +00:00
thorpej
8a5a1155cf Include KERNFS option header. 1998-02-19 00:30:38 +00:00
thorpej
5b5ba62513 Define the NetBSD file systems, and specify option headers for
MFS, LFS, UNION, KERNFS, and NFS.
1998-02-19 00:28:52 +00:00
thorpej
0640c5a64f Put #include directives in the system call names file, too, so we can
generate dependencies on optional system calls.
1998-02-18 23:14:55 +00:00
perry
8486362eaf remove obsolete boot code -- we now use the code in stand/ 1998-02-18 19:23:23 +00:00
perry
3add465995 remove obsolete netboot code -- we now use the code in stand/ 1998-02-18 19:21:36 +00:00
drochner
ba81b6f6df add missing vfsops element 1998-02-18 17:02:20 +00:00
drochner
93a065690b fix map range boundary check 1998-02-18 14:50:32 +00:00
tsubai
117df8f77a Initial import of NetBSD/news. 1998-02-18 13:48:03 +00:00
mycroft
2e55db84dd Sync with powerpc/include/vmparam.h; removes some things which are not used. 1998-02-18 11:11:24 +00:00
mycroft
b7bc9342a8 Fix typo. 1998-02-18 11:10:08 +00:00
mycroft
3b9429b248 Minor changes to make all the float.h files match. 1998-02-18 11:01:27 +00:00
mycroft
5197bf8085 Minor changes. 1998-02-18 10:55:48 +00:00
mycroft
f0a5dd43ce Multiple-inclusion crap, correct precision of DBL_*, etc. 1998-02-18 10:54:10 +00:00
mycroft
ec9c3ce899 DBL_MIN and DBL_MAX were less precise than they should have been.
Other minor changes to match other float.h files.
1998-02-18 10:37:04 +00:00
mycroft
d47ec6f1ae Include correct information for long doubles (mc68881 extended precision). 1998-02-18 10:24:45 +00:00
mycroft
c525e48e35 Include correct information for long doubles (i387 extended precision). 1998-02-18 09:22:02 +00:00
thorpej
62cb255d14 Place a pointer to an array of our vnodeopv_desc *'s in our vfsops
structure, for use by vfs_attach().
1998-02-18 07:26:57 +00:00
thorpej
dc4a1e3d63 vfs_conf.c is obsolete. 1998-02-18 07:19:55 +00:00
thorpej
440541c02f Major kernel interface change (vfsops/vfs_attach()/vfs_detach()); bump
version to 1.3D.
1998-02-18 07:19:23 +00:00
thorpej
19024ae2fb Don't vfs_opv_init_*(); this is properly handed by vfs_attach(). 1998-02-18 07:18:21 +00:00
thorpej
9a3b52d482 Yay! This file is finally DEAD DEAD DEAD! 1998-02-18 07:17:13 +00:00
thorpej
d1f0dbf1b1 Don't use vfssw[], it's gone; use vfs_list instead.
Implement vfs_attach() and vfs_detach(), which add and remove file systems
from the kernel.
1998-02-18 07:16:41 +00:00
thorpej
6c57a3c322 Change vfs_opv_init_explicit() to not allocate the vnode operations
vectors; defer that to vfs_opv_init().

Change the interface to vfs_opv_init() and export it; it now takes a
pointer to an array of vnodeopv_desc *'s to initialize.  Allocate
the vnode operations vectors here.  Called by vfs_attach().

Implement vfs_opv_free(), which deallocates the vnode operations
vectors.  Called by vfs_detach().

Change vfsinit() to build the initial vfs_list by traversing the
vfs_list_inital[] table, and vfs_attach()'ing those file systems.
Also, initialize special vnodeopv_descs (dead, fifo, spec) which
are not associated with any particular file system.
1998-02-18 07:15:30 +00:00
thorpej
c7a0984b02 vfssw[] is gone; use vfs_list instead. 1998-02-18 07:11:46 +00:00
thorpej
da61b242a0 Use vfs_attach()/vfs_detach(). 1998-02-18 07:11:21 +00:00
thorpej
53610dcc4b Add a pointer to an array of struct vnodeopv_desc *'s, for use by
vfs_attach(), and a LIST_ENTRY to link to the kernel's list of
file systems to struct vfsops.

Declare the vfs_list_head structure, and prototype new functions
vfs_attach(), vfs_detach(), vfs_opv_init(), and vfs_opv_free().
1998-02-18 07:09:15 +00:00
thorpej
b5bf2ed6d0 Place a pointer to an array of our vnodeopv_desc *'s in our vfsops
structure, for use by vfs_attach().
1998-02-18 07:05:47 +00:00
mrg
3ed2e6ac6c bug fix from chuck: uvm_vnp_terminate panic when /sbin/init was unlinked 1998-02-18 06:35:46 +00:00
perry
ba7b5f16ff add -DPMAP_NEW if PMAP_NEW is on in mk.conf 1998-02-18 03:54:58 +00:00
thorpej
edbfcebb6a Fixup an inconsistency in the declaration of PTDpaddr, pointed out by
Chris Demetriou.
1998-02-18 03:04:40 +00:00
cgd
3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
cgd
f19c0ee648 nuke pmap_map(). it's an internal MD function, and it's unused 1998-02-18 01:44:32 +00:00
thorpej
b7d1ce7766 Switch the i386 port to the new kernel crash dump format. 1998-02-18 01:09:25 +00:00
is
31c87441a4 Cosmetics. Pointed out by Matthias Scheler. 1998-02-17 19:42:38 +00:00
cgd
a7f7004e33 include an MD header if arm32. (No header yet, but there will be
one eventually.)
1998-02-17 18:27:10 +00:00
mrg
3405ea7d83 properly protect the definition of "cnt". PR#4985 from <bgrayson@ece.utexas.edu> 1998-02-17 09:35:19 +00:00
thorpej
4399060ec9 - Perform all necessary bus_dmamap_sync() operations.
- Greatly simplify allocation and DMA mapping of the mailbox and ccbs.
- Be more robust against resource shortage errors, and report errors better.
1998-02-17 03:02:30 +00:00
thorpej
8354e68508 Remove "class" declarations, and add "devclass" declarations where
appropriate.  Fix several inconsistencies between device class and
attributes.  Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
thorpej
65e20aa9a8 Add first-cut support for UVM. NOTE! User page table allocation does not
currently work with UVM in this pmap!  This is due to a bug in the interaction
between kernel_object and submaps which will be addressed shortly.
1998-02-16 21:01:39 +00:00
thorpej
d8f3ddff17 Add support for UVM. 1998-02-16 20:54:51 +00:00
drochner
07fdccb3a4 Document new WD80x3 option. 1998-02-16 11:41:14 +00:00
drochner
509f891bd0 -Completely reset the card in EtherStop(), otherwise the next
open can fail.
-Disable interrupts in the mask register - EP_W0_RESOURCE_CFG is not
  sufficient for PCI cards.
1998-02-16 11:26:36 +00:00
drochner
b8cdacb8d5 Redo standalone driver for WD8013 / SMC Ultra boards.
(The old one was buggy.)
Frontend / backend splitup and most code taken from sys/dev/ic/dp8390.c
and sys/dev/isa/if_we.c.
1998-02-16 11:21:59 +00:00
drochner
642cbc64e2 Always set own IP address to 0.0.0.0 before BOOTP or DHCP. 1998-02-16 11:10:54 +00:00
kleink
67ef95ed95 Snapshot of cleanup: protect struct stat12 and several function prototypes
from _POSIX_SOURCE resp. _XOPEN_SOURCE.  Fixes bin/4997 from Michael Richardson.
1998-02-16 09:52:19 +00:00
kleink
897ff887fa Addendum to last commit: make the tcgetsid() prototype visible in case
both _POSIX_SOURCE and _XOPEN_SOURCE are defined.
1998-02-16 08:13:06 +00:00
thorpej
b4e77b173a Add support for non-contiguous physical memory, using MACHINE_NEW_NONCONTIG.
These changes also recover memory that is located before the kernel in
the first system software segment on systems which do not use the PROM
for console I/O.  Written by Chris Demetriou and myself.
1998-02-16 03:59:55 +00:00
thorpej
2b06ffd5f9 Add support for UVM. 1998-02-15 21:19:34 +00:00
thorpej
8559f25d47 Implement kcopy(), like bcopy(), but aborts if a fault is encountered.
Required for UVM.
1998-02-15 21:18:45 +00:00
tls
91de585d5f Add correct copyright notice for IP address hash change. This code is donated to TNF by the original copyright holder, Panix. 1998-02-15 18:24:23 +00:00
kleink
9d4229ed21 Regen: use POSIX semantics for chown()/fchown(). 1998-02-14 22:06:38 +00:00
kleink
d3e69807a6 Use sys___posix_{chown,fchown}() instead of sys_{chown,fchown}(). 1998-02-14 22:04:56 +00:00
kleink
96f0dccbdd * Use sys___posix_{chown,fchown}() instead of sys_{chown,fchown}().
* Change reference from sys_posix_rename() to sys___posix_rename().
1998-02-14 21:57:02 +00:00
kleink
f1d879bb87 Regen: use POSIX semantics for chown()/fchown()/rename() syscalls, add lchown(). 1998-02-14 21:43:35 +00:00
kleink
b9233971cd * Use sys___posix_{chown,fchown}() insteade of sys_{chown,fchown}().
* Change reference from sys_posix_rename() to sys___posix_rename().
* Emulate lchown().
1998-02-14 21:40:54 +00:00
kleink
6dccfbdf6f Regen: use POSIX semantics for chown()/fchown()/rename() syscalls, add lchown(). 1998-02-14 21:31:26 +00:00
kleink
c19ebc067c * Use sys___posix_{chown,fchown}() instead of sys_{chown,fchown}().
* Change reference from sys_posix_rename() to sys___posix_rename().
* Emulate lchown().
1998-02-14 21:29:14 +00:00
kleink
8defdfc372 Regen: sys_fchown() -> sys___posix_fchown(). 1998-02-14 21:19:37 +00:00
kleink
ab93fc5e02 Use sys___posix_fchown() instead of sys_fchown(). 1998-02-14 21:16:35 +00:00
kleink
9cda9b2393 * chown(): use sys___posix_chown().
* rename():  change reference to sys___posix_rename().
1998-02-14 21:13:52 +00:00
kleink
81f5f29918 Regen: sys_fchown() -> sys___posix_fchown(). 1998-02-14 21:03:48 +00:00
kleink
5d1d29ff65 Use sys___posix_fchown() instead of sys_fchown(). 1998-02-14 20:58:21 +00:00
kleink
5c1fbd0e44 * chown(): use sys___posix_chown().
* rename():  change reference to sys___posix_rename().
1998-02-14 20:52:47 +00:00
kleink
f339e80ad6 Regen: syscalls.master change (addition of __posix_chown(), __posix_fchown(),
__posix_lchown(); posix_rename() -> __posix_rename()).
1998-02-14 20:05:53 +00:00
kleink
3404e6deb3 Implement __posix_chown(), __posix_fchown() and __posix_lchown(). Also,
rename posix_rename() to __posix_rename() to follow this convention.
1998-02-14 20:01:05 +00:00
kleink
e34b0a84a9 Move some permission-checking code for file owner/group changes up to
vfs_syscalls.c::change_owner().  Also, always update the inode's change time
if the operation succeeds.
1998-02-14 19:56:30 +00:00
kleink
3ef309317a * Factor out some permission-checking code from ufs_setattr() into
change_owner().
* Change the semantics of chown(), fchown() and lchown(): when requesting a
  change of the owner of a file, clear the set-user-id bit; analogous behaviour
  for group changes.
* Since the above is a violation of the semantics specified by POSIX and
  X/Open, add corresponding compatibility syscalls: __posix_chown(),
  __posix_fchown(), __posix_lchown().  (Neither fchown() nor lchown() is
  specified by POSIX; the prefix is intended to reflect the semantics.)
* Rename posix_rename() to __posix_rename() to follow the above convention.
1998-02-14 19:49:43 +00:00
kleink
59fe905973 Fix variable declarations: register -> register int. 1998-02-14 19:34:12 +00:00
pk
0fc808b760 Think-o in pmap_extract4m(), detected by UVM. 1998-02-14 09:28:52 +00:00
cgd
1584dc4420 The pmap_emulate_reference warning about the page not being managed should
be a panic instead.  If it's hit, "random" memory is going to be corrupted.
1998-02-14 02:04:05 +00:00
thorpej
5f8168f660 Use the sesssion's stored SID in getsid(). 1998-02-14 01:33:18 +00:00
thorpej
8efb4289b4 syscalls.master changed; regen. 1998-02-14 01:30:20 +00:00
thorpej
44102031da We now have a native getsid(2), so there's no need to implement it here;
just use sys_getsid().
1998-02-14 01:29:43 +00:00
thorpej
821a4fec46 Add a comment clearly describing that Linux's getsid(2) differs from
the XPG4.2 definition in that it returns the kernel virtual address
of the session structure, rather than the process group ID of the
session leader.
1998-02-14 01:28:15 +00:00
thorpej
c1538fb038 Implement TIOCGSID. 1998-02-14 01:26:50 +00:00
thorpej
5a39799ea4 Prototype tcgetsid(3), per XPG4.2. 1998-02-14 01:25:21 +00:00
cgd
1538076f47 fix pasto in last (sigh) 1998-02-14 01:18:46 +00:00
thorpej
50c9f48319 Implement getsid(2), as defined by XPG4.2: returns the process group ID
of the session leader of the specified process's session.
1998-02-14 01:17:51 +00:00
cgd
ab67040f58 fix for (harmless) bogon introduced in last commit 1998-02-14 01:17:19 +00:00
cgd
e719e8f703 adjust kernel core dump code for changes in kcore.h, also clean up
slightly.
1998-02-14 00:53:26 +00:00
thorpej
6da644fd03 Regen: syscalls.master changes (getsid(2)) 1998-02-14 00:40:45 +00:00
thorpej
da187f7f6d Reserve syscalls 283, 284, and 285 for 3 up-coming POSIX systems calls,
per kleink.  Add XPG4.2's getsid(2) at #286.
1998-02-14 00:39:33 +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
cgd
69d88fbfd6 replace the single phys_ram_seg_t with a count. an array of segment
descriptors will be placed after this structure in the core file.
1998-02-14 00:17:57 +00:00
thorpej
357829d876 Move TIOCGSID to <sys/ttycom.h> 1998-02-13 23:14:52 +00:00
thorpej
018aa6e97e Don't include <dev/scsipi/scsipi_conf.h> twice. 1998-02-13 21:58:40 +00:00
kleink
af9cc34b3c Add ONOCR and ONLRET output modes, from XPG4.2. 1998-02-13 21:53:44 +00:00
kleink
28ca708b8d Reorganize namespace protection, and add ONOCR and ONLRET modes from XPG4.2. 1998-02-13 21:43:45 +00:00
tls
c9934a9084 Change list of interface IP addresses to a hash. Improves performance on hosts with a large number of IP addresses significantly. 1998-02-13 18:21:38 +00:00
tls
561bc2f4ad Remove rounding-down of hash size in hashinit(); support non &hashmask hash functions such as % [prime number] without bletcherous hacks. 1998-02-13 17:36:41 +00:00
kleink
a8bd1c7e84 Fix variable declarations: register -> register int. 1998-02-13 10:23:49 +00:00
enami
d0ad49a001 Backout previous change, and rather, remove all protection but the one
actually currently required.  Suggested by Charles M. Hannum.
1998-02-13 08:28:16 +00:00
enami
dea45865d2 Don't include <dev/scsipi/scsi_all.h> twice. 1998-02-13 08:12:40 +00:00
scottr
f49dd3ef30 Avoid declaring the "astpending" and "want_resched" globals in cpu.h,
as this breaks C++ code that happens to indirectly include this header.
Both Matthias Scheler and I noticed this, independently.

This problem notably does not affect the atari and sun3/sun3x ports,
which have already implemented a similar solution.
1998-02-13 07:41:45 +00:00
scottr
a3675acf9f Make space for want_resched here, like most of the other m68k-based ports. 1998-02-13 07:39:02 +00:00
thorpej
550678e57f Oops, fix a typo. 1998-02-13 05:34:30 +00:00
thorpej
e6c31d3db7 KNF. 1998-02-13 05:33:55 +00:00
thorpej
872181c2f2 A few changes to make it possible to read UVM histories from userland:
- Protect option headers from inclusion if ! _KERNEL or if _LKM.
- Make sure struct uvm_history is always the same size (not dependent
  on NCPU).
- Add fmtlen and fnlen members to struct uvm_history_ent, which specify
  the lengths fo the fmt and fn strings.
- Add name, namelen, and a list entry to struct uvm_history.
- When a history is initialized, place it on the global list of all histories.
1998-02-13 04:55:14 +00:00
thorpej
cb5f8ef1df Add a global list of all UVM histories. 1998-02-13 04:52:00 +00:00
enami
ae193ba149 Move entry for IO-DATA PCLA/T out from comment. Since there may be
two different location for MAC address, just make bus-independent
layer to ask it.
1998-02-13 04:51:22 +00:00
enami
2c12105cda Remove comment which says that fxp is untested (it is known to work now).
Also, make model name closer to what driver prints startup.
1998-02-13 04:33:30 +00:00
enami
ef09ae656f Fix or add protection for mutiple inclusion. 1998-02-13 04:19:13 +00:00
mrg
7d9acb9bb6 add a commented out PMAP_NEW. 1998-02-13 04:12:33 +00:00
cgd
25d056473c Clean up kernel initialization. Use the bootinfo structure (or innate
knowledge) earlier, and gather all information needed earlier.  Mark the
init code carefully re: when it can print stuff out, when it can expect
the firmware to stop working, etc.  Be more careful about using the PROM
console and other PROM facilities, and hint that in the future all use
of firmware/boot program callbacks by the kernel should go away (since
the world may not be mapped the way the firmware/boot program wants!).
1998-02-13 02:09:03 +00:00
thorpej
b22ad9fe1a Define a lookup table for Alpha platform variation names. 1998-02-13 01:29:09 +00:00
thorpej
bdc328cb13 Use the platform family name in alpha_unknown_sysname(). 1998-02-13 00:27:37 +00:00
thorpej
bd60d9c62d Rewrite the way the platform model string is determined:
- Attempt to find the model string in the HWRPB's DSR area.  Failing that
  (if the HWRPB version is too old)...
- Look up the system variation in a variation/string table.  Failing that
  (unknown variation)...
- Create a default model string using the variation number.

Also, factor out a bunch of common code.
1998-02-13 00:12:45 +00:00
thorpej
44df600994 Define the structure of the HWRPB's Dynamic System Recognition area. 1998-02-13 00:07:25 +00:00
thorpej
7fbc685c06 Make it a little more clear that the "eb164" systype doens't necessarily
mean that a machine is a DEC EB164 (it may be an AlphaPC 164, which is
different, from the firmware's perspective).
1998-02-12 20:46:47 +00:00
thorpej
314f40f8d8 We can't count on the CIA revision register telling us if we're a 21171
or 21172, so make the chip/revsion output a little more sane.
1998-02-12 20:43:45 +00:00
kleink
0dc9b5452d Fix variable declarations: register -> register int. 1998-02-12 20:39:41 +00:00
thorpej
44ed0e5b79 Don't include option headers if building an LKM. 1998-02-12 20:38:45 +00:00
thorpej
bc8f46d457 defopt UVMHIST_PRINT, and put it in the already-existing opt_uvmhist.h
option header.
1998-02-12 20:12:03 +00:00
thorpej
90aee42d35 Provide a patchable knob (uvmhist_print_enabled) so that UVM history
buffer printing can be switched on and off at run-time.  Only exists
if the kernel is build with UVMHIST_PRINT, and defaults to `on'.
1998-02-12 20:10:15 +00:00
mrg
dec29037df make these compile. 1998-02-12 10:12:55 +00:00
chs
7f45dbdfae add copyright. 1998-02-12 07:36:43 +00:00
sakamoto
d053bf6ffe Eliminate unnecessary code.
The bebox has only one PCI-ISA bridge(82378ZB).
1998-02-12 05:19:04 +00:00
sakamoto
e6ebe3f36f Add avail_end for DMA (temporary). 1998-02-12 05:16:06 +00:00
cgd
5a1a26d325 set 'hwrpb' in a way that works exactly the same way as the previous
code, but looks significantly less gross.
1998-02-12 02:54:02 +00:00
cgd
c7ba12ab93 rename struct rob's "rpb" element to "rpb_phys" for clarity. also,
change its type from a pointer to a never-defined structure to a
u_int64_t.
1998-02-12 02:27:48 +00:00
cgd
92d17b5b50 clean up the way bootinfo information is passed and used: move the version
number passed by the boot block into a register, change the kernel's
bootinfo handing so that it always uses bootinfo to get bootinfo-ish values
(filling them in if the boot blocks didn't pass them), and make versioning
a small bit more sane.
1998-02-12 01:53:18 +00:00
sakamoto
eef219fd43 Sync with powerpc/include/endian.h 1998-02-12 01:28:48 +00:00
sakamoto
4a3839dbdd Sync with powerpc/include/ansi.h 1998-02-12 01:21:10 +00:00
sakamoto
fcfdcaa513 Sync with port-i386. 1998-02-12 01:19:04 +00:00
sakamoto
4429e5c5fe Import memory disk filesystem hook from port-i386. 1998-02-12 01:03:58 +00:00
gwr
948e07a5ec remove ifdef sun3x 1998-02-11 19:42:29 +00:00
bouyer
0435e7ea98 Correct a bogosity in the adapter->mii attach code pointed out by cgd:
in pci/if_tl.c, call config_found() with a print function, instead of
printing ourself a message in if_tl.c if no miibus was found. The print
function is in mii/mii.c (mii_adapter_print()) so that it can be used by any
adapter (idea from the scsi system).
1998-02-11 19:02:11 +00:00
perry
a4539d646c Add __NetBSD_Version__, add some comments. 1998-02-11 18:56:59 +00:00
mrg
6a324bffbd make these work with -DUVM 1998-02-11 11:57:21 +00:00
thorpej
c26f962957 Use kernel_map in bus_dmamem_{map,free}(). 1998-02-11 03:08:31 +00:00
thorpej
cb9500aac0 Fix for defopt'd UVM and PMAP_NEW. 1998-02-11 03:05:35 +00:00
thorpej
e9017a5ab3 Use kernel_map in bus_dmamem_{map,free}(). 1998-02-11 03:03:52 +00:00
thorpej
bdecbe552b Use M_DMAMAP where appropriate. 1998-02-11 01:50:36 +00:00
thorpej
30aa56fc66 Use M_DMAMAP where appropriate. 1998-02-11 01:37:51 +00:00
thorpej
841fb8fd54 Don't try to dynamically create and destroy DMA maps. Instead, keep
it simple, and allocate one for each transmit and receive descriptor.

In addition to being simpler and faster, this fixes a serious memory leak
in the transmit path.
1998-02-11 01:28:22 +00:00
cgd
e21b7a5995 leave space for bootstrap stack when calculating kernstart 1998-02-11 00:05:33 +00:00
thorpej
ce61ddb564 Add an M_DMAMAP malloc type, for bus_dma data structures. 1998-02-10 21:46:47 +00:00
thorpej
6e899bb965 Clear the scsipi_xfer's status byte before executing the command. This
fixes a condition where stale data can be left in the status byte, causing
user programs that interpret it to fail.

Fixes kern/4964 from Chris Jones <cjones@honors.montana.edu>.
1998-02-10 19:48:51 +00:00
kleink
ed9f037214 Fix EDQUOT and EIDRM, add ENOMSG. 1998-02-10 17:45:06 +00:00
kleink
552ec236a0 Map ENOMSG. 1998-02-10 14:37:38 +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
leo
301a4b3f87 Build the library before using it.... (Thomas Gerner). 1998-02-10 10:28:34 +00:00
leo
dda805c3d4 Accept an 68060 as cpu-type. (Thomas Gerner). 1998-02-10 10:25:08 +00:00
thorpej
1951c4b19b Bump KNMEMCLUSTERS slightly, and make it more obvious how to tune it
(lifted from i386 port).
1998-02-10 03:53:01 +00:00
thorpej
68d3b764ce Make it easier to keep the scaled VM_*_SIZE values in sync w/ the
constants.
1998-02-10 03:52:05 +00:00
perry
021fdb646a add/cleanup multiple inclusion protection. 1998-02-10 02:34:17 +00:00
perry
57f323af87 re-alphabetize LDIRS 1998-02-10 02:06:06 +00:00
perry
f73530ba55 add/cleanup multiple inclusion protection. 1998-02-10 01:26:19 +00:00
thorpej
5887833ac7 Kernel for babylon.netbsd.org. 1998-02-10 00:48:14 +00:00
perry
d39928a203 add/cleanup multiple inclusion protection. 1998-02-10 00:25:25 +00:00
is
cb1085870c Add the LIMITMEM workaround for the kernel address space size problem.
Will be removed as soon as the kernel can auto-adapt to its address space.
1998-02-09 22:14:43 +00:00
jeremy
a1efa84a4d Modified the comments for the recentlty implemented pmap_map() function. 1998-02-09 19:56:37 +00:00
perry
41c3fea850 add multiple inclusion protection (and cleanup). 1998-02-09 17:43:44 +00:00
mrg
e92c7d991e KNF. 1998-02-09 14:35:48 +00:00
mrg
7d3aef40b3 keep statistics on pageout/pagein, total pages, and total operations. 1998-02-09 13:08:22 +00:00
thorpej
eda74e6121 - Perform all necessary bus_dmamap_sync() operations.
- Greatly simplify allocation and DMA mapping of the mailbox and ccbs.
- Be more robust against resource shortage errors, and report errors better.
1998-02-09 10:53:07 +00:00
thorpej
5fe6759646 Fix serial console support, which was broken by the previous revision:
- In the console getc routine, block until a character becomes ready
  (no, really, we mean it).  This routine should _never_ time out.
- In the console putc routine, if the UART has trouble, do NOT proceed
  to print a diagnostic message, which would recursively invoke the
  console putc routine ad nauseum.
1998-02-09 10:22:45 +00:00
mrg
3112d4b3e1 KNF. 1998-02-09 04:05:36 +00:00
scottb
2ee5fa7f17 iBCS2 code cleanup
added support for ELF binaries
added support for ELF shared libs via mmap code borrowed from svr4_misc.c
incorporated a few XENIX patches from Andreas Wrede <andreas@planix.com>
1998-02-09 02:30:42 +00:00
scottb
876dc027a1 added support for SCO UNIX (derived from iBCS2) 1998-02-09 01:29:10 +00:00
mrg
7ff12d37cc fill out vmtotals: t_free, t_vm, t_avm, t_rm and t_arm. leaves shared of same, and t_pw. 1998-02-08 22:23:33 +00:00
thorpej
da21f06eb5 Remove the pager options; they're in std.sparc, and will stay there
until UVM is no longer optional.
1998-02-08 19:24:28 +00:00
thorpej
93b0450b6a Back out previous change (again, grrrr). 1998-02-08 19:23:20 +00:00
kleink
7cf291e0dd Add ENOMSG. 1998-02-08 19:04:31 +00:00
thorpej
223caea788 pmap_page_index() is not used in the MACHINE_NEW_NONCONTIG case. 1998-02-08 18:47:06 +00:00
thorpej
2f55a48f5c Implement MACHINE_NEW_NONCONTIG and switch the hp300 port to use it. 1998-02-08 18:37:55 +00:00
thorpej
39f8b8c99b Round allocations to page size in uvm_pageboot_alloc(). 1998-02-08 18:27:30 +00:00
thorpej
d319b28938 Round allocations to page size in vm_bootstrap_steal_memory(). 1998-02-08 18:24:52 +00:00
tv
40f13df5bc the *PAGER options were moved to the generic config files, but not moved
out of here (causes duplicate opeion errors) -- fix.
1998-02-08 17:46:47 +00:00
mrg
6122fae970 KNF 1998-02-08 16:07:57 +00:00
mrg
bc3395e590 turn of UVM history logging by default. 1998-02-08 14:19:21 +00:00
ragge
c5b2acd27f Split out MSCP floppies as a separate device (rx) instead of handling
them as disk drives. It is now also allowed to change floppies without
the system complaining :-)
1998-02-08 14:03:45 +00:00
thorpej
54aa7dfae0 Correct a think'o I made some time ago, and note that the dump routines
here are broken if VME memory cards exist in the system.
1998-02-08 09:33:14 +00:00
mrg
d9b2f81e27 move pdhist initialisation to the same place as maphist. also, declare
the history buffers are "struct uvm_history_ent" to ensure proper
alignment (eg, alpha).  this fixes a boottime panic when the pdhist was
used before it had been initialised.
1998-02-08 07:52:28 +00:00
thorpej
1305ecbe62 Allow callers of uvm_km_suballoc() to specify where the base of the
submap _must_ begin, by adding a "fixed" boolean argument.
1998-02-08 06:15:53 +00:00
gwr
22c20779d0 Rewrite the match/attch routines to use the P4 register
(when it exists).  Also get the size right; other fixes.
1998-02-08 05:22:08 +00:00
gwr
0378cb2ff6 Define the CG4B_OFF_* values to be relative to the location of
the P4 register so the probe routine finds the P4 at off=0.
1998-02-08 05:20:08 +00:00
gwr
99fd045ec0 Add fb_eeprom_setsize() for setting the FB size based on the EEPROM
value (to be used only if unit=0).  Add P4 helper functions:
fb_pfour_id, fb_pfour_setsize, fb_pfour_{get,set}_video
1998-02-08 05:15:35 +00:00
gwr
ab8340e9da cosmetic 1998-02-08 05:13:17 +00:00
gwr
0bc9d95f95 Move the sun3-vs-sun3x stuff into std.sun3 and std.sun3x
Configure P4 frame buffers at the address of their P4 reg.
Move messy Sun3 bw2 and cg4 configs to included files.
1998-02-08 05:10:45 +00:00
gwr
e3400ad779 Improve some diagnostics. 1998-02-08 05:07:06 +00:00
gwr
5b69e41858 Default the interrupt priority in match functions. 1998-02-08 05:05:54 +00:00
gwr
5193e1e30e Factor *peek out of bus_subr.c and move it to autoconf.c
(to reduce duplication).  Add bus_tmapin and bus_tmapout
for use in probe functions (gets a temporary mapping).
Add bus_mapout() to undo bus_mapin() if needed.
1998-02-08 05:02:50 +00:00
gwr
e387ffba22 Add pmap_map 1998-02-08 04:57:58 +00:00
gwr
bb082938e2 Fix pmap_map 1998-02-08 04:56:37 +00:00
pk
cc06ca6693 * Add the "VIPER 150/21531" to quirk list (ST_Q_SENSE_HELP).
* Double timeout on tape position commands to 30 minutes. Some units
  seem capable of taking that much time.
1998-02-07 23:00:24 +00:00
pk
334b20bbd6 Define a `DMA_FLUSH' macro; dma chip revs 0 & 1 have a different bit
to reset the internal state engine.
1998-02-07 22:41:27 +00:00
thorpej
8e8eed4ba7 Create RX DMA maps with ALLOCNOW. These maps are essentially always
loaded, and recovering from a resource shortage error is much harder
in the receive case.
1998-02-07 21:13:34 +00:00
thorpej
f955aa86e5 Properly handle error conditions from bus_dmamap_load_mbuf(). 1998-02-07 20:40:35 +00:00
augustss
ae3e754e0b Newly generated version. 1998-02-07 20:07:37 +00:00
augustss
6d9b48ac1d Fix typo, and commit in the right order. 1998-02-07 20:05:25 +00:00
augustss
c78e3507ba Add the AGP device in the 82443LX. 1998-02-07 19:32:37 +00:00
chs
abf50cf8c3 add UVM stuff. 1998-02-07 17:28:18 +00:00
chs
50328f94f4 fix initialized variable. 1998-02-07 17:26:34 +00:00
mrg
0a058cb62f implement counters for pages paged in/out 1998-02-07 17:00:36 +00:00
chs
ea8413cff7 whoops! undo GC, these are still used by OLDVM.
not paying attention...
1998-02-07 16:23:35 +00:00
mrg
4ef57d4d22 KNF. 1998-02-07 12:45:53 +00:00
mrg
5e55ce6648 bzero the entire vmspace, like the old vm does. makes ps report sane values of VSZ for swapper/pagedaemon 1998-02-07 12:31:32 +00:00
mrg
e9fbc9f83b add uvm to the sys list. 1998-02-07 11:52:26 +00:00
mrg
1f6b921cf7 restore rcsids 1998-02-07 11:07:38 +00:00
thorpej
208d979613 Use BUS_DMA_NOWAIT where appropriate. Don't create DMA maps with
BUS_DMA_ALLOCNOW.
1998-02-07 10:27:12 +00:00
chs
f64abc7b4c add flags arg to hashinit(), to pass to malloc(). 1998-02-07 02:44:44 +00:00
chs
0711fdaf0b fix a locking problem by replacing the call to uvm_kernacc()
with an inlined version that uses kmem_map instead of kernel_map.
1998-02-07 02:40:36 +00:00
chs
17755a8fae fix typo in locking. 1998-02-07 02:36:58 +00:00
chs
9b371040ea keep track of how many pages are currently being paged out,
stop initiating new pageouts when "(free + paging) > freetarg".
fix pageq locking.
1998-02-07 02:35:11 +00:00
chs
c2f8ffc062 reserve some pages for the kernel, and some more especially
for the pagedaemon allocating from kmem_object.  this should
prevent from the pagedaemon running out of memory and deadlocking.
fix counting of wired pages.
add some debugging code to detect attempts to reference free vm_pages.
1998-02-07 02:34:08 +00:00
chs
249efd73a1 enable hashtables for swapslot storage - deadlock is fixed.
fix initialization of swhash entries.
use malloc(M_NOWAIT) for creating kernel object.
avoid dereferencing a vm_page once the page has been freed.
1998-02-07 02:32:37 +00:00
chs
39c12db74f declare aobj_pager, needed in uvm_km.c. 1998-02-07 02:31:06 +00:00
chs
c82ac447df convert kernel_object to an aobj.
in uvm_km_pgremove(), free swapslots if the object is an aobj.
in uvm_km_kmemalloc(), mark pages as wired and count them.
1998-02-07 02:29:21 +00:00
chs
6376c02019 enable paging of kernel_object. 1998-02-07 02:26:46 +00:00
chs
732a925b1b add locking of kernel_map in uvm_kernacc().
check return value of uvm_fault_wire() in uvm_fork().
enable swappings.
1998-02-07 02:26:04 +00:00
chs
29ec5fd8d5 prototype for uvm_map_checkprot() moved here.
add uvmexp fields for pagouts-in-progress and kernel-reserved pages.
1998-02-07 02:24:02 +00:00
chs
273ac223ec prototype for uvm_map_checkprot() moved to uvm_extern.h. 1998-02-07 02:22:24 +00:00
chs
21e2cac359 fix typoes in locking.
use M_UVMAMAP instead of M_TEMP for malloc type.
1998-02-07 02:21:29 +00:00
chs
5a7c4f2caa don't try to relock amap if there isn't one. 1998-02-07 02:19:55 +00:00
chs
7cb9f7e5b1 rearrange a bit for clarity. 1998-02-07 02:18:27 +00:00
chs
098b8c2420 fix typoes in locking. 1998-02-07 02:17:48 +00:00
chs
1f583a43b1 remove locking from UVMCNT counters.
they don't need to be exact, and the locking causes problems
in some of places they're used.
1998-02-07 02:16:52 +00:00
chs
d7d62b7ad3 snazzier LOCKDEBUG code. 1998-02-07 02:14:04 +00:00
chs
a4a3a88958 GC unused stuff. 1998-02-07 02:13:00 +00:00
cgd
f1fa872906 don't forget class spec 1998-02-07 00:49:19 +00:00
cgd
5942e0ff3d initial implementation of OFW ISA bus code and attachments for a few
devices.  Still a bit rough, but works well enough.  Requires a bunch of
machine-dependent glue (since this is, in effect, a MI bus bridge).
1998-02-07 00:46:45 +00:00
cgd
26d7b63bd3 make sure that LORDER, TSORT, AR, NM, RANLIB, and SIZE are correctly
and consistently set when doing kernel library builds.
1998-02-07 00:11:29 +00:00
thorpej
6b1ff3c892 When copying out multiple control messages, ensure that the next control
message is aligned.  From David Borman <dab@bsdi.com>.
1998-02-06 23:19:26 +00:00
thorpej
e08a44b196 - Perform all necessary bus_dmamap_sync() operations.
- Greatly simplify allocation and DMA mapping of the mailbox and ccbs.
- Be more robust against resource shortage errors, and report errors better.
1998-02-06 23:06:44 +00:00
thorpej
9eb328b495 RCS ID police. 1998-02-06 22:26:13 +00:00
thorpej
2d1cb11d5b Allow userland access to pd_entry_t and pt_entry_t, like the old pte.h
used to do.  Also, RCS ID police.
1998-02-06 21:58:05 +00:00
matt
8098a443f0 A version of the de driver which does bus_dma. Note that it has not been
tested on any other platform other than i386.  Use of bus_dma(9) can be
turned by defining TULIP_BUS_DMA_NOTX and TULIP_BUS_DMA_NORX.  These allow
one to determine if the problem is in the transmit or receive path.
A problem reported by mycroft is also fixed.
1998-02-06 20:57:12 +00:00
matt
a66f53e128 Add M_SETCTX and M_GETCTX. These overload m_pkthdr.rcvif so drivers can
use it as a context field.
1998-02-06 20:53:47 +00:00
cgd
82bb6682da re-indent the EX_FAST change (try to keep a given argument on one line,
so that it's more apparent what the code is going).
1998-02-06 19:51:54 +00:00
mrg
30a584067f remove paging options from kernel files. 1998-02-06 11:20:27 +00:00
thorpej
c0c3c30be3 When allocating bus space in bus_space_alloc(), use EX_FAST to find
the first fit in the map.  The previous behavior violated the principle
of least surprise (especially annoying when you're debugging space allocation
problems).  Suggested by Chris Demetriou.
1998-02-06 10:06:51 +00:00
mikel
4de16acd9c update errno maps, we now have EIDRM 1998-02-06 08:26:02 +00:00
mikel
a5ffacd6cf ELAST incremented, update nfsrv_v2errmap[] initialization 1998-02-06 08:22:54 +00:00
thorpej
840bd3d7b3 Back out previous change. Until the default VM system is UVM, these
"options" ARE required, and leaving them here doens't hurt anything in
the UVM case.
1998-02-06 08:21:55 +00:00
mikel
e588d162d1 add EIDRM for SysV IPC 1998-02-06 08:20:35 +00:00
thorpej
374b6294f9 Back out previous change. Until the default VM system is UVM, these
"options" ARE required, and leaving them here doens't hurt anything in
the UVM case.
1998-02-06 08:19:23 +00:00
thorpej
fd01cb624f Allow a ccd component to be on any partition type. 1998-02-06 08:13:07 +00:00
thorpej
10a076eee1 Kernel for zhadum.netbsd.org, soon-to-be CVS server. 1998-02-06 08:08:56 +00:00
thorpej
424e1858c4 Use __BROKEN_INDIRECT_CONFIG where appropriate. 1998-02-06 08:00:52 +00:00
thorpej
b16f0280e3 Add pceb at pci and {eisa,isa} at pceb attachments. 1998-02-06 07:53:26 +00:00