freebsd-skq/sys/sparc64/include
Jake Burkholder 0019917542 Fix a bug in the data access error recorvery. Before re-enabling the data
cache after a data access error we must discard all cache lines.  When
disabled existing cache lines are not invalidated by stores to memory, so
we risk reading stale data that was cached before the data access error if
we don't flush them.  This is especially fatal when the memory involved
is the active part of the kernel or user stack.  For good measure we also
flush the instruction cache.

This fixes random crashes when the X server probes the PCI bus through
/dev/pci.
2003-11-11 06:41:54 +00:00
..
_inttypes.h
_limits.h sys/sys/limits.h: 2003-05-19 20:29:07 +00:00
_stdint.h
_types.h - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
asi.h
asm.h - Fix placement of cvs ids in previous commit to match .S files in libc. 2003-04-29 00:37:41 +00:00
asmacros.h add support for interrupt counting on sparc64. This copies part of the 2003-07-16 00:08:43 +00:00
atomic.h Make the atomic arithmetic functions return the old value, since they're 2002-12-21 08:53:26 +00:00
bus_common.h Always initialize the UPA target module id in the interrupt mapping 2002-12-01 23:30:26 +00:00
bus_memio.h
bus_pio.h
bus_private.h Lock down the IOMMU bus_dma implementation to make it safe to use 2003-07-10 23:27:35 +00:00
bus.h Implement the bus_space_map() function to allocate resources and initialize 2003-09-23 08:22:34 +00:00
cache.h Fix a bug in the data access error recorvery. Before re-enabling the data 2003-11-11 06:41:54 +00:00
ccr.h
clock.h Add two extern's for adjkerntz and wall_cmos_clock, all other 2002-10-05 20:14:49 +00:00
cpu.h Further cleanup <machine/cpu.h> and <machine/md_var.h>: move the MI 2003-08-16 16:57:57 +00:00
cpufunc.h add support for peeking at pci busses on UltraSparc systems. This prevents 2003-06-22 01:26:08 +00:00
critical.h Expand inline the relevant parts of src/COPYRIGHT for Matt Dillon's 2003-08-12 23:24:05 +00:00
db_machdep.h BKPT_INST is supposed to be a breakpoint, not 0. 2003-06-07 18:24:37 +00:00
eeprom.h
elf.h Add sysentvec->sv_fixlimits() hook so that we can catch cases on 64 bit 2003-09-25 01:10:26 +00:00
endian.h Allow the compiler to micro-optimize byte swapping functions by 2003-09-30 22:35:27 +00:00
exec.h
float.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
floatingpoint.h
fp.h - Rename pcb_fpstate to pcb_ufp (user floating point), and change it to 2003-04-01 04:02:45 +00:00
frame.h - Expand struct trapframe to 256 bytes, make all fields fixed width and the 2002-10-22 18:03:15 +00:00
fsr.h Clean up a bit, and add some more macros to access %fsr fields. 2002-09-14 17:58:54 +00:00
idprom.h
ieee.h
ieeefp.h Use the definitions in machine/fsr.h instead of duplicating these magic 2002-09-14 18:00:44 +00:00
in_cksum.h
instr.h
intr_machdep.h add support for interrupt counting on sparc64. This copies part of the 2003-07-16 00:08:43 +00:00
iommureg.h Some cleanup: 2003-01-06 17:10:07 +00:00
iommuvar.h Lock down the IOMMU bus_dma implementation to make it safe to use 2003-07-10 23:27:35 +00:00
kerneldump.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
kse.h
ktr.h Two tokens that don't together form a vaid preprocssor token cannot be 2003-04-26 17:00:10 +00:00
limits.h sys/sys/limits.h: 2003-05-19 20:29:07 +00:00
lsu.h
md_var.h Further cleanup <machine/cpu.h> and <machine/md_var.h>: move the MI 2003-08-16 16:57:57 +00:00
metadata.h Slight reorg and added AMD64 support. A couple of the MODINFOMD_* values 2003-05-01 03:31:18 +00:00
mutex.h
nexusvar.h
ofw_bus.h Add the new sparc64 OFW PCI framework, conditional on options OFW_NEWPCI 2003-07-01 14:52:47 +00:00
ofw_machdep.h Add function OF_decode_addr(). This function obtains the physical 2003-09-02 20:32:12 +00:00
ofw_mem.h - Declare sparc64_memreg and sparc64_nmemreg in machine/ofw_mem.h. 2003-06-07 18:29:29 +00:00
ofw_nexus.h
ofw_upa.h
param.h Make PAGE_SIZE and related quantities signed on sparc64. (They are signed 2003-10-03 19:49:08 +00:00
pcb.h - Add space for kernel floating point registers to the pcb. These will be 2003-04-03 18:28:03 +00:00
pcpu.h Remove unused fields. 2003-03-18 08:15:24 +00:00
pmap.h Move pmap_resident_count() from the MD pmap.h to the MI pmap.h. 2003-10-06 01:47:12 +00:00
proc.h
profile.h
pstate.h
ptrace.h
reg.h - Expand struct trapframe to 256 bytes, make all fields fixed width and the 2002-10-22 18:03:15 +00:00
reloc.h
resource.h
runq.h
sc_machdep.h "md" files for syscons. 2003-08-24 00:47:40 +00:00
setjmp.h Fix namespace issues by using visibility conditionals from 2002-10-05 05:47:56 +00:00
sigframe.h
signal.h Split 4.x and 5.x signal handling so that we can keep 4.x signal 2002-10-25 19:10:58 +00:00
smp.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
stdarg.h o Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:01:07 +00:00
sysarch.h
tick.h Initialize tick_MHz and related variables much earlier. After the last 2002-10-25 17:42:14 +00:00
tlb.h - Move the routine for flushing all user mappings from the tlb from pmap to 2003-04-13 21:54:58 +00:00
trap.h Allow fast instruction and data access mmu miss traps to be handled by 2003-04-29 21:30:59 +00:00
tsb.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
tstate.h
tte.h Handle the fictitious pages created by the device pager. For fictitious 2003-03-27 02:16:31 +00:00
ucontext.h Don't allow user process to set an invalid window state through sigreturn. 2003-01-10 00:04:56 +00:00
upa.h
utrap.h Allow fast instruction and data access mmu miss traps to be handled by 2003-04-29 21:30:59 +00:00
varargs.h Standardize idempotentcy ifdefs. Consistently use _MACHINE_VARARGS_H_ 2003-09-01 03:01:45 +00:00
ver.h Add two new workaround for firmware anomalies: 2002-11-07 16:07:46 +00:00
vmparam.h Define UMA_MD_SMALL_ALLOC so that uma_small_alloc and uma_small_free will 2002-12-27 19:31:26 +00:00
watch.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
wstate.h