Commit Graph

208 Commits

Author SHA1 Message Date
ragge
0513268399 CL* discarding. 1999-12-04 21:13:19 +00:00
mycroft
9071f9ee14 Add ieee.h. 1999-08-29 18:10:33 +00:00
simonb
3c185af5fd Include <sys/endian.h> after defining whether where are little- or
big-endian.  i386, pc532 and vax still include <machine/byte_swap.h>
and define macros for the {n,h}to{h,n}*() functions.  mips also
defines some endian-independent assembly-code aliases for unaligned
memory accesses.
1999-08-21 05:53:50 +00:00
simonb
06a92524c2 Include <sys/bswap.h> for function prototypes. i386, pc532 and vax
still include <machine/byte_swap.h> and define macros for some of
the bswap*() functions.
1999-08-21 05:39:51 +00:00
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
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
chs
47602880d7 KNF. 1999-07-18 21:33:20 +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
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
christos
c596c324e3 Define __builtin_*() for lint 1999-05-03 16:30:31 +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
thorpej
a77ccfe460 Garbage-collect. 1999-03-20 01:40:25 +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
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
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
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
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
thorpej
908cdfe4e3 Add scsibus entry points to the cdevsw[]. 1998-10-10 02:00:49 +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
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
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
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
mycroft
6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +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
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
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
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
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
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