Commit Graph

22 Commits

Author SHA1 Message Date
bjh21 c25aec3d9f PCB convergence, part the first:
Move the pointer to the current user trapframe from struct mdproc to struct
pcb (as on arm26).  Only tested by compiling kernels on arm32 and
hpcarm (dnard seems to be incomplete anyway).  Someone should try running one.
2001-02-28 18:15:42 +00:00
mycroft a8ac146577 Adjust for userret() interface change. 2000-12-12 19:45:47 +00:00
mrg b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +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
thorpej 1140468205 Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).
2000-05-24 16:48:33 +00:00
mark 865f2563e1 Remove inclusion of sys/device.h
Declare exception_errors as const.
1998-05-01 15:35:43 +00:00
mark c67078a448 Update arm_fpe_[gs]etcontext() functions to take a struct fpreg pointer
as the second argument.
1998-02-22 23:39:53 +00:00
mark b360e67c2e arm32 kernel source restructure
- Removed explict profiling calls from the assembly routines
  - Use the *ENTRY() macros on all assembly functions.
  - Clean up exception strings.
1997-10-14 07:56:48 +00:00
mark ec553ec8c0 New version of the ARM FPE core built. This core does not have all the
builtin veneer code. Instead this veneer code has been moved to kernel.
This removes the need for any runtime fixups of the fpe.
1997-07-08 19:41:28 +00:00
mark 649a90497e No need to check for CPU_ARM7500 being defined as this option implies
CPU_ARM7 which has to be checked anyway.
1997-02-03 03:12:09 +00:00
mark 02d0fd2ea5 Added function fpe_set_execption_mask() to allow the FP exception mask
to be manipulated.
During initialisation the exception mask is set to allow divide by zero
and overflow exceptions to be signaled.
1996-12-27 01:39:14 +00:00
mark 24e50982df Report the core identity string now available from the core header when
booting.
After assembling the post FP processing callback branch call
sync_icache() if CPU_SA110 is defined.
Return a valid signal code when raising a SIGFPE exception so
the cause of the SIGFPE can be determined.
Added the functions arm_fpe_getcontext() and arm_fpe_setcontext()
to obtain the FP context in a FPE independant form for the ptrace()
syscall.
1996-10-15 01:31:28 +00:00
mark 9d18e41fd8 No longer need the relocation function arm_fpe_mod_reloc() as this is now
sorted out at link time.
fpe_arm_header is now the header structure for the fpe and no longer
a pointer to a header structure.
1996-08-21 20:21:05 +00:00
mark bbf3f35a4c Pass the cpu structure to the FPE boot function so that the FPU class
and type can be updated if a FPA is detected.
1996-06-12 19:37:03 +00:00
mark b2d569c95e Fixed compiler warnings generated with -Wall. 1996-04-26 21:02:49 +00:00
mark 4973a32e6d RCS Id police. 1996-03-18 19:54:53 +00:00
thorpej 5c67e5fad9 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:16:48 +00:00
mark c1b23518d2 ARM FPE is now secure i.e. user processes cannot use FP instructions
to access kernel memory.
1996-02-23 22:20:43 +00:00
mark 23d71d4d59 Fixed undefined instruction handler chaining. The FPE will now correctly
pass on an undefined instruction if it was not an FP instruction.
1996-02-15 22:45:21 +00:00
mark 94fa0b2f1b post instruction emulation callback now expects a trapframe structure
to be passed as well as the fp frame.
FPE<->kernel glue code now builds a trapframe structure for passing in
and out of the post instruction emulation callback.
Signal delivery during FP emulation now works correctly.
1996-02-05 16:51:52 +00:00
mark 386ad2ff0f Initial commit of the NetBSD/arm32 port. 1996-01-31 23:14:53 +00:00