Commit Graph

19 Commits

Author SHA1 Message Date
phk
1d74a27efd Remove filename+line number from panic messages. 2004-06-06 21:26:49 +00:00
kensmith
f7ef5bfb22 - Fix for sparc64 to use new __panic() function
Adapted from patch by:	David Cornejo <dcornejo@firetide.com>
Reviewed by:		freebsd-sparc64 (harti)
Approved by:		rwatson (mentor)
2004-01-27 15:02:18 +00:00
jmg
053bd850e3 add support for interrupt counting on sparc64. This copies part of the
code from i386.  The code has a slight bogon that interrupts are counted
twice.  Once on the ithread dispatch and once on the dispatch for the vector

vmstat -i and systat -vm now contains interrupt counts.

Reviewed by:	jake
2003-07-16 00:08:43 +00:00
obrien
ec25c6b550 I was wrong, the ENTRY bits in asm.h did have a purpose -- for userland.
Restore the bits and remove them from asmacros.h.  *.S will now be asm.h
consumers.

Approved by:	jake
2003-04-26 20:54:45 +00:00
obrien
eba4815dac The ENTRY bits were in two places. Remove the one not used (asm.h), but
presurve the nice comment by adding it to asmacros.h.
2003-04-26 17:17:45 +00:00
obrien
cd70fd73e3 Two tokens that don't together form a vaid preprocssor token cannot be
pasted together using ANSI-C token concatinatation.  GCC's cpp, at least,
produces the desired result w/o using "##".
2003-04-26 17:00:10 +00:00
jake
e933237d37 Add pmap support for user mappings of multiple page sizes (super pages).
This supports all hardware page sizes (8K, 64K, 512K, 4MB), but only 8k
pages are actually used as of yet.
2002-08-18 02:09:27 +00:00
jake
7f3888588f Add _ALIGN_DATA and _ALIGN_TEXT macros. 2002-07-29 00:38:07 +00:00
jake
98a2b73a5d Minor style. 2002-05-25 01:44:08 +00:00
jake
985144b745 Fix ifdef LOCORE protection. 2002-03-13 06:04:36 +00:00
jake
7e21af1b54 Add an ATOMIC_CLEAR_INT macro.
Submitted by:	tmm
2002-03-13 03:28:47 +00:00
jake
0e453caf3d Update comments and defines to reflect that normal and alternate g6 point
to the current pcb.
Remove interrupt global defines; they use PCPU_REG now.
Move ATOMIC_INC_INT here from exception.s, add ATOMIC_DEC_INT.
Add a KASSERT macro for use in assembler.
2002-01-08 04:34:20 +00:00
jake
476a14821c Add macros for dedicated register variables, for use in assmebler.
Add a PUTS macro.
2001-12-29 06:47:50 +00:00
jhb
1c79a2c04a Overhaul the per-CPU support a bit:
- The MI portions of struct globaldata have been consolidated into a MI
  struct pcpu.  The MD per-CPU data are specified via a macro defined in
  machine/pcpu.h.  A macro was chosen over a struct mdpcpu so that the
  interface would be cleaner (PCPU_GET(my_md_field) vs.
  PCPU_GET(md.md_my_md_field)).
- All references to globaldata are changed to pcpu instead.  In a UP kernel,
  this data was stored as global variables which is where the original name
  came from.  In an SMP world this data is per-CPU and ideally private to each
  CPU outside of the context of debuggers.  This also included combining
  machine/globaldata.h and machine/globals.h into machine/pcpu.h.
- The pointer to the thread using the FPU on i386 was renamed from
  npxthread to fpcurthread to be identical with other architectures.
- Make the show pcpu ddb command MI with a MD callout to display MD
  fields.
- The globaldata_register() function was renamed to pcpu_init() and now
  init's MI fields of a struct pcpu in addition to registering it with
  the internal array and list.
- A pcpu_destroy() function was added to remove a struct pcpu from the
  internal array and list.

Tested on:	alpha, i386
Reviewed by:	peter, jake
2001-12-11 23:33:44 +00:00
jake
19f1ec146e Implement SET. Set execption.s 1.12.
Submitted by:	tmm
2001-11-18 03:31:01 +00:00
jake
846fcabb62 Implement PCPU_ADDR. Align functions on 16 bytes boundaries. 2001-09-30 18:41:57 +00:00
jake
6bbabef261 Gcc 3.0 requires a .register pseudo-op for certain global registers when
used in assembly language.  Tell it to ignore the registers for now.
2001-08-18 18:05:24 +00:00
obrien
0d541e5a5e The author isn't a [UC] Regents. Correct the copyright language. 2001-08-09 02:09:34 +00:00
jake
d30f7d7811 Flesh out the sparc64 port considerably. This contains:
- mostly complete kernel pmap support, and tested but currently turned
  off userland pmap support
- low level assembly language trap, context switching and support code
- fully implemented atomic.h and supporting cpufunc.h
- some support for kernel debugging with ddb
- various header tweaks and filling out of machine dependent structures
2001-07-31 06:05:05 +00:00