NetBSD/sys/arch/powerpc/include
jdolecek 089abdad44 Rearrange process exit path to avoid need to free resources from different
process context ('reaper').

From within the exiting process context:
* deactivate pmap and free vmspace while we can still block
* introduce MD cpu_lwp_free() - this cleans all MD-specific context (such
  as FPU state), and is the last potentially blocking operation;
  all of cpu_wait(), and most of cpu_exit(), is now folded into cpu_lwp_free()
* process is now immediatelly marked as zombie and made available for pickup
  by parent; the remaining last lwp continues the exit as fully detached
* MI (rather than MD) code bumps uvmexp.swtch, cpu_exit() is now same
  for both 'process' and 'lwp' exit

uvm_lwp_exit() is modified to never block; the u-area memory is now
always just linked to the list of available u-areas. Introduce (blocking)
uvm_uarea_drain(), which is called to release the excessive u-area memory;
this is called by parent within wait4(), or by pagedaemon on memory shortage.
uvm_uarea_free() is now private function within uvm_glue.c.

MD process/lwp exit code now always calls lwp_exit2() immediatelly after
switching away from the exiting lwp.

g/c now unneeded routines and variables, including the reaper kernel thread
2004-01-04 11:33:29 +00:00
..
ibm4xx Fix some white space nits. 2003-11-26 03:56:38 +00:00
oea More PPC64 changes. (latent for now). 2003-11-21 22:57:14 +00:00
Makefile Reorganize the way powerpc port install machine specific headers. 2003-10-20 00:12:09 +00:00
Makefile.inc
altivec.h Make sure to include opt_foo.h if a defflag option FOO is used. 2003-06-23 11:00:59 +00:00
ansi.h Define va_list as __builtin_va_list for GCC 3.x. Change stdarg macros 2003-09-24 02:39:56 +00:00
aout_machdep.h
asm.h Nuke ci_spillstk/CI_SPILLSTK. No longer needed. 2003-08-08 07:14:26 +00:00
atomic.h
bat.h Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea). 2003-02-03 17:09:53 +00:00
bswap.h Reorganize the way powerpc port install machine specific headers. 2003-10-20 00:12:09 +00:00
bus.h Need to set BUS_DMA_COHERENT to BUS_DMA_NOCACHE on IBM ppc4xx CPUs. 2003-09-03 13:30:05 +00:00
cdefs.h
cpu.h Rearrange process exit path to avoid need to free resources from different 2004-01-04 11:33:29 +00:00
cpu_counter.h Add support for the IBM 403GCX cpu. Enabled with "options PPC_IBM403". 2003-03-11 10:40:15 +00:00
darwin_machdep.h Implement mach_thread_get_state. 2003-11-11 17:31:59 +00:00
db_machdep.h Add a BKPT_ADDR() macro which gives MD code a chance to munge a 2003-04-29 17:06:03 +00:00
elf_machdep.h
endian.h
endian_machdep.h
float.h Rename <sys/float_ieee.h> to <sys/float_ieee754.h>, following libc's 2003-05-12 15:22:53 +00:00
fpu.h Make sure to include opt_foo.h if a defflag option FOO is used. 2003-06-23 11:00:59 +00:00
frame.h Move SFRAMELEN to frame.h and use it in vm_machdep.c. In setfunc, setup 2003-08-27 20:20:07 +00:00
ieee.h Use <sys/ieee754.h> where applicable. 2003-10-26 20:55:30 +00:00
ieeefp.h
instr.h Remove (the now non-compiling) support for 128bit FP emulation, which 2003-10-27 04:32:02 +00:00
int_const.h
int_fmtio.h
int_limits.h
int_mwgwtypes.h
int_types.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
ipkdb.h
isa_machdep.h Add powerpc-specific isa and isadma machdep code. (Merge common code from 2003-10-19 03:19:32 +00:00
kcore.h
limits.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
lock.h Move __cpu_simple_lock_t and __SIMPLELOCK_{UN,}LOCKED to machine/types.h 2003-09-26 22:45:41 +00:00
mach_machdep.h Move machine dependent definitions to machine dependent headers. 2003-12-03 18:25:44 +00:00
macho_machdep.h
math.h
mcontext.h Add some accessor macros for the ucontext: 2003-10-08 22:43:01 +00:00
netbsd32_machdep.h change 'data' arg of fp_ioctl to 'void *' to match file.h 2003-04-16 08:58:18 +00:00
openpic.h
openpicreg.h
param.h Re-arrange things in evbppc & powerpc to support OEA-based eval boards 2003-03-04 07:50:57 +00:00
pcb.h Cleanup/rework cpu_switch*, switch_exit, Idle routine. Remove pcb_psl 2003-08-12 18:34:47 +00:00
pio.h
pmap.h Don't define pmap_t if _LOCORE is defined. 2003-02-05 01:27:34 +00:00
pmc.h
proc.h
profile.h
psl.h add PSL_TGPR (for MPC603) 2003-07-31 01:25:38 +00:00
pte.h Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea). 2003-02-03 17:09:53 +00:00
ptrace.h Back out the lwp/ktrace changes. They contained a lot of colateral damage, 2003-06-29 22:28:00 +00:00
reg.h Add comments to describe PowerPC64 ABI register usage. 2003-02-08 20:03:22 +00:00
reloc.h
setjmp.h
signal.h Define SIGTRAMP_VALID properly. 2003-09-27 00:58:32 +00:00
spr.h Add support for MPC74[45]7 2003-10-09 20:49:06 +00:00
stdarg.h Define va_list as __builtin_va_list for GCC 3.x. Change stdarg macros 2003-09-24 02:39:56 +00:00
trap.h Management, not managment. Mostly from jmc@openbsd. 2003-04-26 22:07:12 +00:00
types.h Move __cpu_simple_lock_t and __SIMPLELOCK_{UN,}LOCKED to machine/types.h 2003-09-26 22:45:41 +00:00
userret.h Reduce code duplication by adding mi_userret() in sys/userret.h 2003-10-31 16:44:34 +00:00
varargs.h