NetBSD/sys/arch/alpha/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
..
alpha_cpu.h Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
alpha.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +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 Rename __LDPGSZ to AOUT_LDPGSZ, to accurately reflect what it is. 2002-12-10 17:14:02 +00:00
asm.h We haven't done ECOFF for a long time; garbage-collect all the 2001-12-18 17:12:32 +00:00
atomic.h
autoconf.h Fix a grammatical nit. 2003-03-22 14:26:41 +00:00
bswap.h
bus.h Handle 64bit DMA addresses on PCI for platforms that can (currently only 2003-06-15 23:08:53 +00:00
bwx.h
cdefs.h
cfbreg.h
cpu_counter.h Share alpha/microtime.c with i386 and sparc64 as kern_microtime.c. 2003-02-05 12:16:41 +00:00
cpu.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
cpuconf.h
cpuvar.h Make sure to include opt_foo.h if a defflag option FOO is used. 2003-06-23 11:00: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
disklabel.h remove boot_block stuff from include/disklabel.h, and migrate to 2002-04-03 06:16:01 +00:00
ecoff_machdep.h
eisa_machdep.h
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
frame.h
ieee.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
ieeefp.h Merge the nathanw_sa branch. 2003-01-17 21:55:23 +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
intr.h
isa_machdep.h A few ISA sound drivers like to share dma channels, and hence deferred 2003-05-09 23:51:25 +00:00
isapnp_machdep.h
kbio.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +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
loadfile_machdep.h
lock.h #ifdef _KERNEL_OPT police. 2003-06-28 08:42:41 +00:00
logout.h "definitions" has lots of 'i's, but that's not reason to leave one out. 2002-09-29 23:23:56 +00:00
Makefile Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
Makefile.inc
math.h Clean up some rampant code duplication wrt ieee number handling: 2002-02-19 13:08:12 +00:00
mcontext.h Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
pal.h Add missing common or OSF/1 PALcode instructions from the AARM: wtint, 2002-05-19 00:23:50 +00:00
param.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
pcb.h Back out the lwp/ktrace changes. They contained a lot of colateral damage, 2003-06-29 22:28:00 +00:00
pci_machdep.h Let machine-dependent code specify how to enumerate the bus. 2002-05-15 19:23:51 +00:00
pio.h
pmap.h add support for non-executable mappings (where the hardware allows this) 2003-08-24 17:52:28 +00:00
pmc.h Implement pmc(9) -- An interface to hardware performance monitoring 2002-08-07 05:14:47 +00:00
proc.h Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
profile.h
prom.h
psl.h
pte.h add support for non-executable mappings (where the hardware allows this) 2003-08-24 17:52:28 +00:00
ptrace.h
reg.h
rpb.h Use "#define<tab>". 2002-07-25 23:41:33 +00:00
setjmp.h
sigdebug.h
signal.h Add a new feature-test macro, _NETBSD_SOURCE. If this is defined 2003-04-28 23:16:11 +00:00
stdarg.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
sysarch.h Add sysarch calls to read and write the full fp_c. 2002-01-14 00:53:16 +00:00
tc_machdep.h
types.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
userret.h Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
varargs.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
vmparam.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
vuid_event.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
z8530var.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00