Commit Graph

169 Commits

Author SHA1 Message Date
jonathan
be2c7f3d13 If we panic inside trap(), Do a stack traceback before printing the trap log.
Also change the stack-traceback code to avoid having multiple returns
(and thus multiple stack pops) because with gcc -O2 that breaks the
heuristic that a "jr ra" preceding the PC precedes code to push the
current stack frame.  Which breaks stacktrace() before it even
traces past itself :-(.  Use a goto instead.
1995-05-02 19:51:52 +00:00
jonathan
fb9f07db36 Update MIPS stack backtrace code to trace through locore functions,
traps, and interrupts  The earlier (4.4bsd) code didn't do the first two, and
got the last one wrong.  Also print some functions (e.g., trap handlers)
by name.  Add hook to use something other than printf() as the output
function, e.g,. for kernel debugging.
Tested with the `native' toolset, but not ELF format kernels.
(i.e., unwinding the $GP register is not tested.)

The stack backtrace code that interprets and unwinds stackframes is still
opaque and stylistically awkward.
1995-04-29 21:10:31 +00:00
jonathan
b2c7420e5a Fix performance bug in pmax MachFlushDCache(). Old code disabled icache
and wasn't unrolled. This code runs cached and unrolled, giving an order
of magnitude improvement in some cases (e.g., DMA-capable network devices).
In use at Stanford DSG since late January 1995.
1995-04-28 23:17:51 +00:00
jonathan
026a077a5d Check in source code actually containing changes in previous log message--
fixes to turbochannel-based DECstation interrupt enabling.
(I hate network firewalls that break rsh and remote CVS.)
1995-04-28 22:50:29 +00:00
jonathan
523e8bccbc Fix hardware interrupt-mask setup in the 5k/240 (3max)+ interrupt handler.
(A similar fix needs to be applied to the 3min and xine handlers.
This fixes a long-standing problem when booting with a card that
wants to interrupt (e.g., a network interface) would have interrupts
enabled before a handler was set up.

Add interrupt-counting code to model-independent interrupt handler,
and 3max (5k/200) and 3max+ (5k/240) md handlers, for vmstat -i.
Similar changes for 3min and xine are obvious but not done.

Add  code for 5k/240 to read, and latch, the current value of the
IOASIC bus-cycle counter at each timer interrupt.  The latched
counter is needed to accurately interpolate the bus-cycle counter value
as a high-resolution clock.
1995-04-28 21:48:11 +00:00
jonathan
ef8023a47b Check in changes suggested by Ralph Campbell: update variable names
to use turbochannel slot numbers, add a couple of extra slots, just
in case.
1995-04-28 03:10:41 +00:00
mellon
1992309f8b Fix a few compat code casualties 1995-04-25 19:16:43 +00:00
mellon
3eca8117f7 Fix up args to scdebug_{call,ret} 1995-04-25 05:30:14 +00:00
christos
de42a28a1b - added sunos_machdep.c for sun3, atari, amiga and mac68k.
- changed machdep.c and trap.c to use struct emul.
- remove ep_setup references.
- added struct emul to all emulations.
1995-04-22 20:24:40 +00:00
mellon
a3c29d62df Use _KERNEL, not KERNEL 1995-04-12 01:55:35 +00:00
jtc
32a6db8a76 Mips specific portions of ieeefp.h (fp_rnd, fp_except, constants, etc.). 1995-04-11 18:20:46 +00:00
jtc
600a989fb6 Changed FLT_ROUNDS from constant to a call to __flt_rounds(), so that the
current rounding mode is accurately reported.
1995-04-11 18:18:35 +00:00
mycroft
fecbe784d6 Oops; finish that last change. 1995-04-10 12:45:53 +00:00
mycroft
22cefc03bc Bring back pmap_kernel(), for now always inlined as a pointer to
kernel_pmap_store.
1995-04-10 12:41:29 +00:00
mycroft
127e0761c9 Add mmopen(), mmclose(), and mmmmap() where appropriate. Lock vmmap when
needed.  Make types consistent.
1995-04-10 11:54:47 +00:00
mellon
404e6bc5c9 Put endif COMPAT_09 inside function definition 1995-04-10 04:47:47 +00:00
mellon
23023327a2 Move cpu-specific exec support to cpu_exec.c; Support 4.4BSD a.out 1995-04-03 04:38:04 +00:00
jtc
8ba211cde0 Added #define _KERNEL 1995-03-28 18:37:27 +00:00
jtc
71ab4ed9dc KERNEL -> _KERNEL 1995-03-28 18:13:48 +00:00
cgd
fa2133533d invoke ktrsyscall with (vp, code, argsize, args) as args. 1995-03-26 08:03:29 +00:00
jtc
f86410093b Changed name of __weak_reference() to __indr_reference(). They really
are indirect references, and I want to add a real __weak_reference()
macro to <machine/cdefs.h> soon.
1995-03-23 19:58:48 +00:00
mycroft
2f805fa51b copy*str() should use size_t. 1995-03-09 12:05:21 +00:00
jtc
830a53e394 ANSI says that <stdarg.h>'s va_end macro must expand to a void expression.
For consistancy, I'm changing <varargs.h> too.
1995-01-28 01:51:46 +00:00
jtc
9540190d45 This file, which will be included by <sys/cdefs.h>, will contain macros
such as __warn_references() and __weak_reference() which are actually
machine dependant.  This will make it easier for ports that are being
bootstraped with ELF and ECOFF based toolchains.

This change also introduces a new macro, _C_LABEL(x).  _C_LABEL expands
its argument, an identifier, to a character string of the identifier
name as it is represented in an object file.

For most ports, _C_LABEL(x) will expand to "_x", for ELF based ports
_C_LABEL(x) will expand to "x".
1995-01-19 01:38:36 +00:00
mellon
8f24f1259a Write out new-style core files 1995-01-18 06:52:46 +00:00
mellon
9e9d8e5a78 Ultrix pcb_regs compatibility, reorder interrupt handlers (probably futile), use new callv naming 1995-01-18 06:51:46 +00:00
mellon
13301513c1 Add conditional gp support; add interrupt disable before setting or clearing soft ints 1995-01-18 06:45:29 +00:00
mellon
4e0b8e9b63 break mullo and mulhi out of gp regs in sigcontext 1995-01-18 06:42:01 +00:00
mellon
14f5639dca Make register definitions compatible with Ultrix 1995-01-18 06:40:12 +00:00
mellon
09f6d5d141 Make pcb_regs structure compatible with Ultrix 1995-01-18 06:39:43 +00:00
mellon
faf867c2b2 Support for alternate compilers and file formats 1995-01-18 06:38:57 +00:00
mellon
2dd8487ae4 Support for loading ELF on NetBSD/pmax - to be combined with elf loader under sys/compat later 1995-01-18 06:16:33 +00:00
mellon
3a011804a6 ELF format (to be combined with elf header in sys/compat later) 1995-01-18 06:15:38 +00:00
mellon
20a4f723d7 4.4BSD binary format 1995-01-18 06:14:58 +00:00
jtc
d7a8b2964f Only define sig_atomic_t when _ANSI_SOURCE is defined. 1995-01-10 19:01:00 +00:00
cgd
e5049f4d59 make the definition of _JBLEN mach. dep. header-dependent. 1994-12-20 10:36:27 +00:00
mycroft
a42208fd05 More underscores... 1994-12-15 17:48:39 +00:00
mycroft
487dab2ff9 Make a new macro _C_LABEL(), which prepends an underscore to the argument unless
NO_UNDERSCORES is defined.  Use it in the *LEAF() and END() macros.
1994-12-15 15:26:26 +00:00
mycroft
db904fa0d4 Remove underscores from uses of *LEAF() and END(). Use _C_LABEL() in explicit
symbol references.
1994-12-15 15:18:29 +00:00
dean
e5d5a6cf17 thread_wakeup wants (void *) not (int) 1994-11-23 20:46:20 +00:00
dean
342f9cd185 more underscore changes (from J. Stone) 1994-11-23 17:47:53 +00:00
dean
e7558eafd1 put #ifdef KERNEL around CLK_TCK define 1994-11-15 19:00:49 +00:00
dean
705ee976cf Prepended underscores 1994-11-14 23:48:58 +00:00
dean
add2031dcf Prepended underscores 1994-11-14 23:33:46 +00:00
cgd
a63beafc2b new RCS ID format. 1994-10-26 21:08:38 +00:00
cgd
70d91988ab update for new syscall args description mechanism 1994-10-20 05:34:04 +00:00
cgd
f501e4e128 make <stdarg.h> a symlink, and clean up ports' stdarg.h and varargs.h files. 1994-10-15 04:57:29 +00:00
jtc
badcc17a6d Add constants required by XPG3 1994-10-05 17:16:29 +00:00
cgd
cefdccbf31 changes for the new sys_process.c, and some cleanup 1994-08-15 16:37:04 +00:00
cgd
3fbc338a62 define __BIT_TYPES_DEFINED__ for compatibility with things like BIND and nvi 1994-07-20 05:44:19 +00:00
deraadt
50b13742e4 _MACHINE_VARGS_H_ 1994-06-29 00:45:01 +00:00
glass
f6143cedc0 assembler problem 1994-06-25 07:05:12 +00:00
glass
eff56c22fa much works but untested w/new fs. expect more tomorrow 1994-06-15 05:18:38 +00:00
glass
5e54277664 fix a few integration bugs, add vmfault debugging, more ultrix stuff 1994-06-02 06:14:56 +00:00
glass
8f22e98c12 VM_MIN_ADDR -> 0 1994-06-01 18:51:16 +00:00
glass
af77c1caf2 more likely to work now, probably less knf...thats the next project 1994-05-28 20:21:30 +00:00
glass
6b63c739f3 bsd 4.4-lite pmax port as ported to NetBSD 1994-05-27 08:57:32 +00:00
glass
814f4529f3 upgrade to bsd 4.4-lite code base. only mod is rcsids 1994-05-27 08:40:50 +00:00
glass
377b097932 upgrade to bsd 4.4-lite code base. only mod is rcsids 1994-05-27 08:39:00 +00:00
cgd
d64461d7d3 add basic integral types (a la sparc port) that new nvi wants.
mark old 'basic integral types' as XXX -- they should be squished
when whoever gets this port working.
1994-03-14 02:12:06 +00:00
deraadt
b2c0b0a0c8 add a pmap_kernel() function 1994-01-16 00:58:07 +00:00
deraadt
6db422de7f cpu_exit returns void 1994-01-16 00:53:44 +00:00
deraadt
7c98e17fdb add sysarch() stub 1994-01-16 00:52:47 +00:00
deraadt
405bf3d48d use SYS_syscall instead of SYS_indir
and turn off the 64 bit syscall interface
1994-01-16 00:49:47 +00:00
deraadt
376a5f4108 pullin vm_statistics.h 1994-01-16 00:42:16 +00:00
deraadt
aa7ced4bd5 intrframe -> clockframe 1994-01-15 18:46:00 +00:00
deraadt
9fd56d82c3 some pmax updating (Terry Friedrichsen is helping on this now). 1994-01-14 04:53:37 +00:00
deraadt
56cc97cb80 update from rick, tarfile of Oct 11 10:46 1993-10-15 02:56:33 +00:00
deraadt
fe806afec2 pmax code from <ralphc@pyramid.com> & <rick@snowhite.cis.uoguelph.ca> 1993-10-12 03:22:19 +00:00