Commit Graph

879 Commits

Author SHA1 Message Date
thorpej
28fb7c1eb8 Define cpu_number() as discussed on tech-smp. 1999-08-10 21:08:05 +00:00
thorpej
eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
thorpej
51fe928d5e Slight cleanup; do all of the spl*()s with imask[]. 1999-08-04 15:54:28 +00:00
augustss
a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
thorpej
51d09124f9 Fix another locking error: if freeing a PV entry, don't attempt to
free a PV page if the PV entry was associated with the kernel pmap,
since the kernel pmap is locked, and freeing the page will execute
a code path which will attempt to lock it again, resulting in deadlock.
No real loss, since the next time a PV entry is freed, the page will
be freed, too.
1999-07-28 06:54:41 +00:00
thorpej
eced87ad87 Fix a locking error: When allocating a PV page for the kernel pmap,
the pmap would be locked, and we would deadlock when mapping the
newly allocate PV page.
1999-07-28 05:37:54 +00:00
thorpej
9d4524778d Slight adjustment to last; move pmap_kenter_pa() to where the other
pmap_k* functions are.
1999-07-28 01:17:01 +00:00
thorpej
31fa5c6f78 Don't inline pmap_kenter_pa(). It doesn't buy us much to do so, and
it's nice to have it show up in stack traces.
1999-07-28 01:07:52 +00:00
cgd
f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
chs
47602880d7 KNF. 1999-07-18 21:33:20 +00:00
thorpej
0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg
ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej
b2781586c4 Normalize include paths. 1999-07-09 02:32:28 +00:00
thorpej
3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
itojun
5effafcaa6 kernel configuration for IPv6/IPsec. should be in GENERIC in the future.
(source code will be committed soon)
1999-07-01 07:00:12 +00:00
itojun
427639cdce - Call ip6intr if INET6 is defined.
- remove "need-flag" for mac68k esp driver, as it is not used in anywhere
  and conflicts with IPsec ESP header.

This should be the only MD change in IPv6 support, except kernel config file.
Very sorry if you have any compilation problem with it (I believe it is okay).
If your favorite arch is not included in here, please add a
call to ip6intr() from softintr handle.
1999-06-28 08:20:40 +00:00
matthias
c343d282b0 Pull over some changes from the i386 port to fix the kernel RSS counters. 1999-06-26 09:09:51 +00:00
thorpej
0288ffb53a pmap_change_wiring() -> pmap_unwire(). 1999-06-17 19:23:20 +00:00
thorpej
f5a527bb4e Remove pmap_pageable(); no pmap implements it, and it is not really useful,
because pmap_enter()/pmap_change_wiring() (soon to be pmap_unwire())
communicate the information in greater detail.
1999-06-17 18:21:21 +00:00
thorpej
f51688dd8b PMAP_NEW is no longer optional on the pc532; the old pmap's page table
allocation strategy no longer works at all.  Move pmap.new.* to pmap.*.

To read the revision history of PMAP_NEW up until this merge, use cvs
rlog of the old pmap.new.* files.
1999-06-17 00:22:41 +00:00
thorpej
2c35c7bd03 Only declare block major numbers for devices which can be the root device. 1999-06-07 20:31:27 +00:00
thorpej
d76e7b8c6d Don't pass a nam2blk around at all; just have setroot() and friends reference
dev_name2blk[] directly.  Addresses PR #7622 (ITOH Yasufumi), although
in a different way.
1999-06-07 20:16:08 +00:00
thorpej
beb8d06638 Generally update the comment above vunmapbuf(). 1999-05-26 22:19:33 +00:00
thorpej
a2d06a4721 Generally update the comment above the vmapbuf() implementations. 1999-05-26 22:07:36 +00:00
thorpej
2580d306ab Change the vm_map's "entries_pageable" member to a r/o flags member, which
has PAGEABLE and INTRSAFE flags.  PAGEABLE now really means "pageable",
not "allocate vm_map_entry's from non-static pool", so update all map
creations to reflect that.  INTRSAFE maps are maps that are used in
interrupt context (e.g. kmem_map, mb_map), and thus use the static
map entry pool (XXX as does kernel_map, for now).  This will eventually
change now these maps are locked, as well.
1999-05-26 19:16:28 +00:00
thorpej
5b897f96c5 msgbuf doesn't need VM_PROT_EXEC. 1999-05-25 23:31:14 +00:00
thorpej
f197609d93 Add some DIAGNOSTIC checks for inconsistent use of pmap_enter/pmap_kremove. 1999-05-25 20:33:33 +00:00
thorpej
f311a1c308 Make a slight modification of pmap_growkernel() -- it now returns the
end of the mappable kernel virtual address space.  Previously, it would
get called more often than necessary, because the caller only new what
was requested.

Also, export uvm_maxkaddr so that uvm_pageboot_alloc() can grow the
kernel pmap if necessary, as well.  Note that pmap_growkernel() must
now be able to handle being called before pmap_init().
1999-05-20 23:03:23 +00:00
lukem
e4a87aa1a9 * convert to using MI allocsys(). most ports were using an MD allocsys(),
although a couple still used the old pre-4.4-lite (?) mechanism.
* use format_bytes() to format the various printf()s that print out memory sizes
1999-05-20 08:21:42 +00:00
thorpej
f98d358a1f Rework layer 2 protocol input routines. Instead of calling e.g. ether_input()
directly, call the function pointer (*if_input)(ifp, m).  The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary.  Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.
1999-05-18 23:52:51 +00:00
thorpej
c10a926030 Allow the caller to specify a stack for the child process. If NULL,
the child inherits the stack pointer from the parent (traditional
behavior).  Like the signal stack, the stack area is secified as
a low address and a size; machine-dependent code accounts for stack
direction.

This is required for clone(2).
1999-05-13 21:58:32 +00:00
christos
c596c324e3 Define __builtin_*() for lint 1999-05-03 16:30:31 +00:00
matthias
6a9785dfc6 Fix symbol loading. esym is passed as an offset to loadaddress. 1999-05-03 09:19:29 +00:00
phil
29f999f240 options & filesystems tweeks. 1999-04-29 15:31:00 +00:00
thorpej
b8073b401b Garbage-collect the VM_MBUF_SIZE constant. Instead, use the size
(nmbclusters * mclbytes), so that the right amount of KVA space is
allocated if those variables are patched.
1999-04-26 22:46:44 +00:00
simonb
5d8b1ef3e4 g/c REAL_CLISTS. 1999-04-25 02:56:26 +00:00
chs
b3d919281a update one last call to uvm_pagealloc(). 1999-04-17 20:03:39 +00:00
chs
f455dd6596 add a `flags' argument to uvm_pagealloc_strat().
define a flag UVM_PGA_USERESERVE to allow non-kernel object
allocations to use pages from the reserve.
use the new flag for allocations in pmap modules.
1999-04-11 04:04:04 +00:00
pk
016934b1fe Move advertisement into a comment of its own. 1999-04-06 19:43:04 +00:00
thorpej
967b8c433c Don't call configure() from cpu_startup(). 1999-04-01 00:17:45 +00:00
jonb
a72ad718a0 Add rnd pseudo-device to GENERIC, and a few cleanups everywhere. 1999-03-27 08:00:43 +00:00
mycroft
93768384ee Fix a bug in pmap_collect_pv(), even though nobody currently uses it:
When we put a page on the collection list, we must subtract NPVPPG from the
total free count: one for each pv_entry that's free in that page, and one for
each free pv_entry in other pages that we're going to eat by moving the ones
in the page being collected.
1999-03-27 05:57:02 +00:00
mycroft
12d512bbb7 Oops; vm_offset_t -> vaddr_t. 1999-03-27 00:30:06 +00:00
mycroft
9c6b797796 Changes for modified pmap_enter() API:
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
  because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
  avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot.  Also, DO NOT use
  pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
  access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
  access_type = 0.  This should probably be revisited.
1999-03-26 23:41:25 +00:00
mrg
7b93dd1117 remove opt_uvm.h 1999-03-25 00:41:46 +00:00
mrg
ca5f9685bb clean up kernel/config files files for machVM lossage. 1999-03-24 06:06:09 +00:00
mrg
d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
jonb
a50349ea32 Comment out options that are already the default... (I'm leaving them
around as an example of what to change if needed.)
1999-03-24 03:48:04 +00:00
jonb
6c6ff861c6 put in compiler options to reduce object size by half 1999-03-23 23:02:14 +00:00
thorpej
a77ccfe460 Garbage-collect. 1999-03-20 01:40:25 +00:00
chs
ab7269f62a if uvm_fault() fails with KERN_RESOURCE_SHORTAGE, send a SIGKILL
and print a message about it.  this will be used to recover from
out-of-swap conditions.
1999-03-18 04:56:01 +00:00
sommerfe
bc533621ed defopt MINIROOTSIZE 1999-03-17 18:59:21 +00:00
jonb
6d636069d6 Allow "make depend" to work again. (It currently freaks out since the
SFILES variable is empty...)
1999-03-14 05:03:35 +00:00
jonb
fae90a3604 Move DEFAULT to GENERIC so make snapshot works. Comment out makeoptions
line in INSTALL so it will config.
1999-03-10 13:35:33 +00:00
matthias
470ebb82a6 Define PMAP_NEED_PROCWR and make pmap_procwr flush the icache.
Thank's to Ignatios Souvatzis noticing this.
1999-03-01 14:27:59 +00:00
scottr
d32ed292af defopt BUFCACHE and BUFPAGES. 1999-02-27 06:39:34 +00:00
lukem
dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
jonb
aae389c323 STANDALONE should be _STANDALONE 1999-02-06 15:20:26 +00:00
mycroft
897a8a7f29 Mark [hn]to[nh][ls]() with __const__, so they are subject to CSE. 1999-01-24 12:55:01 +00:00
mycroft
ec253b6315 Use __builtin_next_arg(). Fixed PR 6862. 1999-01-22 14:14:32 +00:00
thorpej
2fb041ce0a No need for <sys/mtio.h> 1999-01-19 18:18:41 +00:00
chuck
9cb41178b7 MNN is no longer optional, remove old code 1999-01-16 20:39:03 +00:00
bouyer
f20d50fae4 Add byte_swap.h here too. 1999-01-16 02:31:54 +00:00
bouyer
dc306354b0 Move the bswap functions from libutil to libc (this bups the
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
matthias
2dff258464 Support BUFCACHE option (stolen from i386). 1999-01-15 07:43:48 +00:00
matthias
88b2c1662d Protect all defines in this file with #ifdef _KERNEL. At least the
definition of T_SLAVE will cause the bind build to fail. Thank's
to Phil Budne for noting this.
1999-01-15 07:42:48 +00:00
jonb
5a8a1a4dd6 clean up some incorrect comments 1999-01-10 03:46:27 +00:00
thorpej
e598335d1c Garbage-collect `mbutl'. 1999-01-09 22:10:12 +00:00
augustss
fc5f9ee81d Add -Wpointer-arith warning since `void *' arithmetic is not ANSI C. 1999-01-08 19:26:12 +00:00
jonb
95a1be90da Add a new kernel config, and use it as a quick non-intrusive test to see
if I know how to drive CVS...  Hope this is easy to fix if I screw it up!
1999-01-06 02:30:58 +00:00
kleink
1b6a24c1d4 Support for compound statements enclosed in parenthes to appear as
expressions is a GNU C extension; mark as such them with __extension__ to
suppress portability warnings.  Addresses kern/3562 and misc/6185, as suggested
by Dave Sainty <dave@dtsp.co.nz>.
1998-12-16 11:11:02 +00:00
thorpej
da572a137f Argh, fix the ANSI CPP version of the a.out WARN_REFERENCES(). 1998-12-02 21:16:46 +00:00
thorpej
a6f7e0c05a Implement WARN_REFERENCES(). 1998-12-02 00:58:42 +00:00
thorpej
5f0577babc Adapt to the new scsipi_adapter interface. 1998-11-19 21:43:00 +00:00
mrg
db3051d720 fix problems in many d_mmap routines:
- returned EOPNOTSUPP rather than -1.
	- no check for negative offset.
many of these fix potential security problems in these drivers.


XXX XXX XXX
the d_mmap cdev routine should be changed to have a prototype like:
	paddr_t (*d_mmap) __P((dev_t, off_t, int));

by someone!
1998-11-19 15:38:20 +00:00
oster
c74d32c5fc Updating of bdev's and cdev's to support RAIDframe. 1998-11-13 04:47:03 +00:00
thorpej
cabecee13c Changes to support fork_kthread():
- cpu_set_kpc() now takes void *arg third argument, passed to the
  entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
  When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.
1998-11-11 06:43:49 +00:00
tron
b296275bb4 Defopt SYSVMSG, SYSVSEM and SYSVSHM. 1998-10-19 22:09:13 +00:00
drochner
2468738337 change handling of libkern:
-sys/lib/libkern builds as library per default (as it was documented all
 the time)
-ports able to LKM set "KERN_AS=obj" explicitely in their Makefiles
 (for now; should depend on actual "option LKM" or -better- functions
 included for LKM use should be pulled in by a stub)
-always link libcompat before libkern - libkern stuff can be referred to
 by libcompat, but not the other way
1998-10-15 18:37:13 +00:00
chuck
8bef431273 remove unused share map code from UVM:
- update calls to uvm_unmap_remove/uvm_unmap (mainonly boolean arg
        has been removed)
1998-10-11 23:20:59 +00:00
thorpej
908cdfe4e3 Add scsibus entry points to the cdevsw[]. 1998-10-10 02:00:49 +00:00
thorpej
29d472f53d Garbage-collect the open_target_lu and close_target_lu entry points from
struct scsipi_adapter; they were not used.

Add a scsipi_ioctl entry point to struct scsipi_adapter.  This will be
used to issue ioctl commands to the host adapters.

Inspired by PR #6090, from Matt Jacob.
1998-10-10 00:28:28 +00:00
thorpej
b38544d99e Oops, back out a buglet I didn't intend to commit in the last change. 1998-10-07 18:29:26 +00:00
matthias
4b23112e21 Add empty definition of __warn_references for lint. 1998-10-07 08:54:59 +00:00
thorpej
d681cf055a configure() prototype is in <sys/device.h> 1998-10-06 20:50:15 +00:00
matthias
49c778c3b5 Use __LIBC12_SOURCE__, not __LIBC12_SOURCE :-) 1998-10-01 21:16:06 +00:00
matthias
777ffc95a2 Fix a small type in sendsig.
Fix some esym typeclash lossage.
1998-09-30 20:20:03 +00:00
matthias
5267ada16a use __sigreturn14 in sigcode. 1998-09-30 20:17:29 +00:00
matthias
d067796204 config doesn't like c-style comments. 1998-09-30 20:16:17 +00:00
thorpej
feb1d22dcc NCPU > 1 -> MULTIPROCESSOR 1998-09-24 23:00:43 +00:00
thorpej
cc485c1a08 Catch up with changes to signal delivery. 1998-09-17 02:01:59 +00:00
thorpej
7b32475079 Define the new sigcontext structure. 1998-09-16 23:14:15 +00:00
thorpej
6385066c76 Need 13 longs for jmp_buf now; 128-bit signal mask. 1998-09-16 23:13:57 +00:00
matthias
dfc0d8e7d5 {bzero, bcopy} -> {memset, memcpy}
add -DINSECURE to stand/Makefile.inc
1998-09-12 19:14:58 +00:00
thorpej
70e641047c In cpu_coredump(), use MID_MACHINE rather than MID_* (whatever it expands
to).
1998-09-09 11:17:24 +00:00
thorpej
8abe0d6b1c Adjust for the new "reaper" kernel thread: do not free the vmspace and
u-area in machine-dependent code.  Instead, call exit2() to schedule
the reaper to free them for us, once it is safe to do so (i.e. we are
no longer running on the dead proc's vmspace and stack).
1998-09-09 00:07:48 +00:00
christos
50909bd6d9 Assign copyright to TNF. 1998-09-05 15:28:08 +00:00
pk
7c5210bcab Assign my copyrights to TNF. 1998-09-05 15:20:47 +00:00
lukem
c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
matthias
0f9ab462ab std.pc532: default to UVM and PMAP_NEW.
DUMMY, KLONDIKE: Update to my current config.
INSTALL: Use -O1 to save space.
1998-09-02 19:22:13 +00:00
matthias
59def94d93 Get rid of vm_offset_t/vm_size_t. Resolve conflicts in pmap.new.[ch] after
last import from port-i386.
1998-09-02 19:17:12 +00:00
matthias
04232f6196 declare end[] everywhere the same, fix an egcs "missing braces" warning. 1998-08-24 22:52:23 +00:00
mycroft
6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +00:00
mycroft
cc8a78e783 Assign my copyrights to TNF. 1998-08-15 04:42:42 +00:00
mycroft
6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
eeh
a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
kleink
546365a27e _POSIX_SOURCE -> _POSIX_C_SOURCE 1998-08-06 11:25:04 +00:00
mycroft
a24dbc8065 (Always) (practice) (safe) (macro expansion). 1998-07-31 15:07:41 +00:00
thorpej
3ff8e6493a Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:34:52 +00:00
mycroft
da2e61d160 Delint. 1998-07-27 13:55:32 +00:00
thorpej
d47ea67c1f Define one page free list, and put all pages on it. 1998-07-08 04:43:18 +00:00
matthias
2395483fe4 * Use tlbflush and not pmap_update to flush the cache.
* For the pc532, there is no need to have different implementations
  of pagemove for UVM and bsd-VM.
1998-07-06 09:42:56 +00:00
jonathan
b37021c1a1 defopt NATM. 1998-07-05 22:48:05 +00:00
jonathan
011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan
5c0c5dd0b4 defopt ISO TPIP. 1998-07-05 04:37:35 +00:00
jonathan
8db0fcdbf7 defopt CCITT. 1998-07-05 02:12:22 +00:00
jonathan
3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
jonathan
466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
lukem
bd8d501f7e remove options FIFO; it's now the default 1998-06-26 01:53:43 +00:00
thorpej
971b8956ef defopt KTRACE 1998-06-25 21:18:11 +00:00
kleink
1fbd0b3749 GC the unused `physadr' type, which was not able to hold a complete physical
address on 2 architectures anyhow.  Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
1998-06-14 20:09:22 +00:00
cgd
651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
tv
00ede2160e Change ddb_init() for a.out to provision for kernels which are not booted by
the current 'bootblock' method, like the Shark, which preloads and preformats
the symbol table right in the boot code.
1998-06-09 01:57:41 +00:00
thorpej
a7f360c6c9 Specify a non-profiling C rule. 1998-05-31 23:25:41 +00:00
kleink
a97fc2f180 If any of _ANSI_SOURCE, _POSIX_C_SOURCE or _XOPEN_SOURCE are defined, don't
provide any identifiers other than sig_atomic_t.
1998-05-25 20:59:01 +00:00
matthias
e63637f311 resolve conflicts from the latest i386 import. 1998-05-23 12:52:27 +00:00
thorpej
4854a503ac Propagate a fix from the i386 version: fix a typo in some code that isn't
yet used.
1998-05-20 17:12:06 +00:00
thorpej
6626878e7b It is no longer necessary for pmap_pinit() and pmap_release() to be
pmap interface functions, as NetBSD no longer uses statically allocated
pmaps (except for the kernel pmap, which is special-cased anyhow).
1998-05-19 19:00:11 +00:00
kleink
687ea7404c Fix some arithmetics lossage on typeless pointers. 1998-05-08 16:55:15 +00:00
thorpej
1686aca01d Pull in opt_gateway.h as appropriate. 1998-04-29 23:11:00 +00:00
kleink
a53c1863fe Provide definitions for intptr_t and uintptr_t, signed resp. unsigned integral
types large enough to hold any pointer.
1998-04-27 17:39:10 +00:00
matthias
d84c3b6b89 use config (just set the defaults), pmap_new related changes. 1998-04-25 19:58:11 +00:00
matthias
9701d34100 changes to make the port-i386 pmap.new.c work for the pc532. 1998-04-25 19:54:32 +00:00
matthias
f4b9ecfd19 initial imprt of i386 pmap_new 1998-04-24 20:10:19 +00:00
matthias
e790849ac4 missing bits from the -mrtd changes (declare do_softclock, changed prototype
for child_return).
1998-04-24 20:05:39 +00:00
matthias
0a733bc86a db_memrw.c: There is no pmap_pte in pmap.new.c, use kvtopte.
disksubr.c:	kill register, use explicit types (egcs).
kgdb_machdep.c:	There is no pmap_pte in pmap.new.c, use kvtopte.
locore.s:	PTmap, PTD and PTDpde are not used with pmap.new.c.
machdep.c:	remove unused reference to panicstr (egcs).
		Some pmap.new.c changes.
vm_machdep.c:	Change i386_btop to ns532_btop in pmap.new.c code.
1998-04-21 20:12:17 +00:00
tv
b21bfbde11 Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
matthias
2fe02dea17 Changes for kernels compiled with -mrtd:
locore.s:
- cpu_switch "returns" to proc_trampoline after cpu_fork. cpu_switch is
  called with an argument, remove it from the stack when not compiled
  with -DMRTD.
- use KENTRY instead of ENTRY for all functions called from C.
- when calling C code, don't clean up the stack when compiled with -DMRTD.
- need to split fusubail into fubail and subail, because fu and su
  take different number of arguments.

machdep.c:
- set sf_p when dumping
- new function do_softclock (that just calls softclock) because softclock
  doesn't take an argument.

mainbus.c:
- establish softclock interrupt to call do_softclock

trap.c:
- trap() and syscall() allways use std C calling conventions.
- need to split fusubail into fubail and subail, because fu and su
  take different number of arguments.
- make child_return take only one argument like the other functions
  "called" via cpu_set_kpc.

vm_machdep.c:
- set sf_p in cpu_fork.
1998-04-11 17:44:11 +00:00
matthias
bd4f1b48a9 cpu_switch is called with an argument. Reflect this in the switchframe. 1998-04-11 17:30:40 +00:00
matthias
b47b6cc4d2 New macro KENTRY to declare assembler functions used by the kernel to
make -mrtd kernels possible.
1998-04-03 23:01:37 +00:00
matthias
28b0f7408b Make this compile again after the changes to the tty subsystem. 1998-03-30 20:10:26 +00:00
phil
3b25c8611a sync to current state. 1998-03-20 19:15:18 +00:00
matthias
525ebe8083 prepare for PMAP_NEW. 1998-03-19 22:10:21 +00:00
matthias
ff58f2dd3a update to my current configuration 1998-03-19 22:09:24 +00:00
matthias
e14a1c1120 Switch the pc532 to MACHINE_NEW_NONCONTIG and add machine specific bits
for UVM. All of this was mostly done by stealing code from the i386 port.
Prepare for stealing pmap.new.c as well.
1998-03-18 21:59:38 +00:00
matthias
214f303d0e Import from i386 because it contains a nice explanation of our MMU. 1998-03-18 21:52:02 +00:00
bouyer
9f50fca1fd Add commented out "options FFS_EI" 1998-03-18 16:34:41 +00:00
perry
1ed8ea9966 note second parm of sysarch() is now void *, + trivial KNF, etc. 1998-02-25 21:41:55 +00:00
mycroft
533de19431 Remove random.s. 1998-02-22 08:51:04 +00:00
mycroft
dcfb8695ab Move to libkern. 1998-02-22 08:50:17 +00:00