Commit Graph

505 Commits

Author SHA1 Message Date
minoura d4d1b4cce4 Argument modreg of fpu_decode_ea() is actually an opecode.
That bug prevented awk(1) to work.
2000-06-13 12:28:13 +00:00
jhawk 3ac3c9b124 Oops, omitted the rename from last.
Function in this file is db_stack_trace_print(),
not db_stack_trace_cmd().
2000-05-27 16:44:41 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
jhawk 8e44b27348 Rename the machine-specific stack trace printing functions
from db_stack_trace_cmd() to db_stack_trace_print(),
and add an additional argument, a function pointer for an
output routine (i.e. printf() or db_printf()).

Add db_stack_trace_cmd() in db_command.[ch], calling
db_stack_trace_print() with db_printf() as the printer.

Move count==-1 special handling from db_stack_trace_print() [nee
db_stack_trace_cmd()] to db_stack_trace_cmd() [nascent here].

Again, I'm unable to test compilation on all affected platforms,
so advance apologies for potential brokenness.
2000-05-26 03:34:24 +00:00
minoura 6943d5dd19 defopt FPSP. 2000-05-14 14:13:53 +00:00
thorpej 39f8e55cfc On the m68k, the most efficient type for __cpu_simple_lock_t is
an unsigned char, since that is what the `tas' instruction uses.

While I'm here, implement the __cpu_simple_lock family of routines.
Why?  One, because they're easy.  Two, so Steve can get master/slave
MVME systems talking across the backplane.  :-)
2000-05-02 05:17:45 +00:00
thorpej 855b79db92 Let each platform typedef the new __cpu_simple_lock_t, which should
be the most efficient type used for the atomic operations in the
simplelock structure, and should also be __volatile.
2000-05-02 04:41:04 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
scw 8e95e817ec Move <machine/cpu.h> above <m68k/*.h> so we get M680x0 #defines
for those m68k ports which define them in the former file.
2000-04-15 20:31:27 +00:00
is 97df1401a1 Move original Motorola files to the "dist" subdirectory, in response
to PR 9626 by Kris Shannon.
2000-04-14 20:24:29 +00:00
jdolecek cef3c93f82 Switch to MI ns_cksum.c - the MD ns_cksum.c is equivalent to it
(modulo some u_intX_t vs. u_char type usage). In particular, the
MD version didn't contain any MD code.
2000-04-06 13:37:49 +00:00
is 1edce49e66 Bug fixes for 68020only or 68030only machines, by Aymeric Vincent. 2000-04-05 19:38:33 +00:00
minoura 78b105698a Move dl* function definitions to libc on ELF.
Based on the patch supplied by Takuya Shiozaki <tshiozak@astec.co.jp>.
See http://mail-index.netbsd.org/tech-userlevel/2000/02/23/0000.html.
2000-04-02 15:35:47 +00:00
kleink 230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
tron e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
mycroft 02905321b2 Foolish consistency. Mainly, always use underscores and sys/endian.h. 2000-03-16 15:09:34 +00:00
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
kleink a9ebf7bb8c Define ISO C99 (unsigned) long long (min, max) symbols. 2000-03-07 19:31:49 +00:00
thorpej fd8c03cf44 Allow arch-specific code to specify in4_cksum() like it can specify
in_cksum().
2000-02-14 21:42:50 +00:00
kleink 36e6bc645e Improve namespace test macros a bit. 2000-02-05 14:04:36 +00:00
kleink 82464e46d6 Add a C99-style va_copy macro. 2000-02-03 16:16:06 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
aymeric 20a96dc688 make DCIAS work for 020-only / 030-only kernels 2000-01-15 17:08:03 +00:00
kleink 693059feda const -> __const and include <sys/cdefs.h> earlier; fixes PR lib/9052
by Takahiro Kambe.
2000-01-04 14:20:05 +00:00
kleink 11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
scottr 8759c4e95e Add m68k_seg_offset() and m68k_page_offset() to complement m68k_trunc_seg()
m68k_trunc_page(), respectively.  Motivated primarily by a desire for
code clarity and symmetry.
1999-12-12 07:45:46 +00:00
ragge 0513268399 CL* discarding. 1999-12-04 21:13:19 +00:00
minoura 13d97a81a4 pmap_enter() change. 1999-11-18 15:19:26 +00:00
thorpej f16bb11bf0 Add register prefixes. 1999-11-10 23:17:21 +00:00
thorpej c718a7c548 Add register prefixes. 1999-11-10 00:13:59 +00:00
thorpej ae13d86f18 Add register prefixes. 1999-11-10 00:01:32 +00:00
chs f4dbce1e9a in copy{in,out,}str(), return an error if maxlen == 0. 1999-11-07 17:31:37 +00:00
thorpej 7e538afd49 Add register prefixes. 1999-11-06 17:42:31 +00:00
he 5d30149598 Provide multiple inclusion protection. 1999-11-03 00:47:21 +00:00
frueauf 4f3fdd1096 fix typo: s/EM_68k/EM_68K/ 1999-10-30 22:56:29 +00:00
thorpej 3b435a7396 Add register prefixes. 1999-10-25 23:48:07 +00:00
kleink 522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
jdolecek 7f589dba84 rename the MD Debugger() to cpu_Debugger()
add MI Debugger() which switches to console if wscons is used prior
to calling cpu_Debugger()
1999-10-12 17:08:56 +00:00
itohy a5c3c08c66 Add missing TBIA() definition for 68030-only machine. 1999-09-27 04:43:40 +00:00
itohy 694f6286e8 Make it compile again. 1999-09-27 04:18:45 +00:00
is 490ccb0747 vm_offset_t -> vaddr_t or paddr_t, as appropriate. 1999-09-25 21:19:48 +00:00
is 75321f3ae6 vm_offset_t -> db_addr_t (mostly), v_addr_t (one place). 1999-09-25 21:11:55 +00:00
is c861d2e5d4 Replace leftover vm_offset_t's by paddr_t or vaddr_t, as appropriate.
Rename variables/parameters from "va" to "pa" where they are a paddr_t.
Correct DCIAS to take a paddr_t (instead of vaddr_t).
1999-09-25 19:27:35 +00:00
frueauf aa39b12fb0 add missing #include <compat/svr4/svr4_lwp.h>. Ok'd by Klaus Klein. 1999-09-23 16:37:04 +00:00
minoura 42b87a3a7d #ifndef _M68K_CACHEOPS_H_ - #endif. 1999-09-23 15:10:18 +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
simonb 299578ebd5 Spell "privilege" correctly (correct spelling from Jonathan Stone). 1999-08-16 02:59:22 +00:00