NetBSD/sys/arch/powerpc/include
chs 939df36e55 add support for non-executable mappings (where the hardware allows this)
and make the stack and heap non-executable by default.  the changes
fall into two basic catagories:

 - pmap and trap-handler changes.  these are all MD:
   = alpha: we already track per-page execute permission with the (software)
	PG_EXEC bit, so just have the trap handler pay attention to it.
   = i386: use a new GDT segment for %cs for processes that have no
	executable mappings above a certain threshold (currently the
	bottom of the stack).  track per-page execute permission with
	the last unused PTE bit.
   = powerpc/ibm4xx: just use the hardware exec bit.
   = powerpc/oea: we already track per-page exec bits, but the hardware only
	implements non-exec mappings at the segment level.  so track the
	number of executable mappings in each segment and turn on the no-exec
	segment bit iff the count is 0.  adjust the trap handler to deal.
   = sparc (sun4m): fix our use of the hardware protection bits.
	fix the trap handler to recognize text faults.
   = sparc64: split the existing unified TSB into data and instruction TSBs,
	and only load TTEs into the appropriate TSB(s) for the permissions.
	fix the trap handler to check for execute permission.
   = not yet implemented: amd64, hppa, sh5

 - changes in all the emulations that put a signal trampoline on the stack.
   instead, we now put the trampoline into a uvm_aobj and map that into
   the process separately.

originally from openbsd, adapted for netbsd by me.
2003-08-24 17:52:28 +00:00
..
ibm4xx remove an unused proto. 2003-08-17 18:07:11 +00:00
oea add support for non-executable mappings (where the hardware allows this) 2003-08-24 17:52:28 +00:00
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 Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +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
bus.h Switch ibm4xx over to using the more flexible powerpc bus_space/bus_dma code. 2003-07-25 10:12:42 +00:00
byte_swap.h
cdefs.h
cpu_counter.h Add support for the IBM 403GCX cpu. Enabled with "options PPC_IBM403". 2003-03-11 10:40:15 +00:00
cpu.h Not all PPC ports (e.g. macppc) equate IPL_NONE with 0. 2003-08-18 22:10:33 +00:00
darwin_machdep.h
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_machdep.h
endian.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 Cleanup/rework cpu_switch*, switch_exit, Idle routine. Remove pcb_psl 2003-08-12 18:34:47 +00:00
ieee.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
ieeefp.h
instr.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +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
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
macho_machdep.h
Makefile
Makefile.inc
math.h
mcontext.h __greg_t should be an long, not int. (LP64 friendliness) 2003-01-20 06:58:10 +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 Add a new feature-test macro, _NETBSD_SOURCE. If this is defined 2003-04-28 23:16:11 +00:00
spr.h add some 745x-specific MSSCR0 bits. 2003-08-17 18:08:17 +00:00
stdarg.h Add a new feature-test macro, _NETBSD_SOURCE. If this is defined 2003-04-28 23:16:11 +00:00
trap.h Management, not managment. Mostly from jmc@openbsd. 2003-04-26 22:07:12 +00:00
types.h Typo: __HAVE_BITENDIAN_BITOPS -> __HAVE_BIGENDIAN_BITOPS 2003-07-21 16:10:50 +00:00
userret.h
varargs.h