Commit Graph

21433 Commits

Author SHA1 Message Date
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