freebsd-dev/sys/amd64/include
Konstantin Belousov 3136faa59d Make pmap_invalidate_cache_range() available for consumption on amd64.
Add pmap_invalidate_cache_pages() method on x86. It flushes the CPU
cache for the set of pages, which are not neccessary mapped. Since its
supposed use is to prepare the move of the pages ownership to a device
that does not snoop all CPU accesses to the main memory (read GPU in
GMCH), do not rely on CPU self-snoop feature.

amd64 implementation takes advantage of the direct map. On i386,
extract the helper pmap_flush_page() from pmap_page_set_memattr(), and
use it to make a temporary mapping of the flushed page.

Reviewed by:	alc
Sponsored by:	The FreeBSD Foundation
MFC after:	3 weeks
2011-04-18 21:24:42 +00:00
..
pc A simple rewrite of biossmap.c: 2009-04-15 17:31:22 +00:00
xen Switch to our preferred 2-clause BSD license. 2010-05-05 20:39:02 +00:00
_align.h Merge amd64/i386 _align.h by aligning on the size of register_t (copied 2010-11-26 10:59:20 +00:00
_bus.h
_inttypes.h Copy powerpc/include/_inttypes.h to x86 and replace i386/amd64/pc98 2011-01-08 18:09:48 +00:00
_limits.h Fix types of some values in machine/_limits.h. 2011-01-08 11:13:34 +00:00
_stdint.h On mixed 32/64 bit architectures (mips, powerpc) use __LP64__ rather than 2011-01-08 12:43:05 +00:00
_types.h Translate from the i386. All FP constants and operations are evaluated 2008-01-17 13:12:46 +00:00
acpica_machdep.h Extract the code to find and map the MADT ACPI table during early kernel 2009-09-23 15:42:35 +00:00
apicvar.h Refactor timer management code with priority to one-shot operation mode. 2010-09-13 07:25:35 +00:00
apm_bios.h Move identical copies of apm_bios.h to sys/x86/include, replace them with 2010-11-11 19:36:21 +00:00
asm.h Define an END() macro for use in i386 and amd64 assembly code, akin 2007-08-22 04:26:07 +00:00
asmacros.h Clear DF bit in eflags/rflags on the kernel entry. The i386 and amd64 2010-06-23 20:44:07 +00:00
atomic.h Inform a compiler which asm statements in the x86 implementation of 2010-12-18 16:41:11 +00:00
bus_dma.h
bus.h Merge amd64 and i386 bus.h and move the resulting header to x86. Replace 2010-12-20 16:39:43 +00:00
clock.h Add forgotten declarations for tsc_perf_stat from the previous commit. 2011-04-12 22:22:01 +00:00
cpu.h Deprecate tsc_present as the last of its real consumers finally disappeared. 2011-03-15 17:19:52 +00:00
cpufunc.h Add a function rdtsc32() to read lower 32 bits from TSC and discard upper 2011-04-14 16:53:32 +00:00
cputypes.h Add Centaur/IDT/VIA vendor ID for Nano family, which has long mode support. 2009-01-05 21:51:49 +00:00
db_machdep.h
elf.h Add AT_STACKPROT elf aux vector. Will be used to inform rtld about the 2011-01-07 14:22:34 +00:00
endian.h - Merge changes to the base system to support OFED. These include 2011-03-21 09:40:01 +00:00
exec.h
float.h Translate from the i386. All FP constants and operations are evaluated 2008-01-17 13:12:46 +00:00
floatingpoint.h
fpu.h Remove npxgetregs(), npxsetregs(), fpugetregs() and fpusetregs() 2010-11-26 14:50:42 +00:00
frame.h Save and restore segment registers on amd64 when entering and leaving 2009-04-01 13:09:26 +00:00
gdb_machdep.h Change GDB_BUFSZ to be large enough to hold a register dump where each 2007-02-05 21:48:32 +00:00
ieeefp.h Fix fpset*() to not trap if there is a currently unmasked exception. 2008-01-11 17:11:32 +00:00
in_cksum.h
intr_machdep.h Add a facility for associating optional descriptions with active interrupt 2009-10-15 14:54:35 +00:00
iodev.h - Extract the IODEV_PIO interface from ia64 and make it MI. 2010-04-28 15:38:01 +00:00
kdb.h Add kdb_cpu_sync_icache(), intended to synchronize instruction 2007-06-09 21:55:17 +00:00
legacyvar.h Companion for r188301: fix the prototypes. 2009-02-08 07:03:34 +00:00
limits.h
md_var.h Handle a case when non-canonical address is loaded into the fsbase or 2010-04-10 18:38:11 +00:00
memdev.h Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set(). 2011-01-17 22:58:28 +00:00
metadata.h A simple rewrite of biossmap.c: 2009-04-15 17:31:22 +00:00
minidump.h amd64: introduce minidump version 2 2010-11-11 18:35:28 +00:00
mp_watchdog.h
nexusvar.h Rework how the nexus(4) device works on x86 to better handle the idea of 2008-03-13 20:39:04 +00:00
param.h When compat32 binary asks for the value of hw.machine_arch, report the 2010-07-22 09:13:49 +00:00
pcb.h Increase size of pcb_flags to four bytes. 2010-12-22 19:57:03 +00:00
pci_cfgreg.h Extend the support for PCI-e memory mapped configuration space access: 2008-08-22 02:14:23 +00:00
pcpu.h Mark the __curthread() functions as __pure2 and remove the volatile keyword 2010-07-29 18:44:10 +00:00
pmap.h Make pmap_invalidate_cache_range() available for consumption on amd64. 2011-04-18 21:24:42 +00:00
pmc_mdep.h - Support for uncore counting events: one fixed PMC with the uncore 2010-04-02 13:23:49 +00:00
ppireg.h
proc.h Reorganize syscall entry and leave handling. 2010-05-23 18:32:02 +00:00
profile.h Use intr_disable() and intr_restore() instead of frobbing the flags register 2010-10-25 15:28:03 +00:00
psl.h
ptrace.h
reg.h To avoid excessive code duplication create wrapper for fill regs 2011-02-16 17:50:21 +00:00
reloc.h
resource.h
runq.h
segments.h Register an interrupt vector for DTrace return probes. There is some 2010-08-28 08:03:29 +00:00
setjmp.h Remove 3rd clause, renumber, ok per email 2007-01-12 07:26:21 +00:00
sf_buf.h
sigframe.h
signal.h Sync definitions for struct sigcontext for i386 and amd64 architectures 2009-04-01 13:44:28 +00:00
smp.h Amd64 doesn't have a lazypmap ipi. 2011-03-27 16:18:51 +00:00
specialreg.h Add definitions for CPUID instruction 6, ECX information. 2011-04-12 22:12:23 +00:00
stack.h Make preparations for increasing the size of the kernel virtual 2008-06-20 05:22:09 +00:00
stdarg.h Use __builtin_va_start instead of __builtin_stdarg_start. GCC4 obsoletes 2006-09-21 01:37:02 +00:00
sysarch.h Remove redundant inclusion of <sys/cdefs.h>. 2010-02-20 14:13:47 +00:00
timerreg.h The "free-lance" timer in the i8254 is only used for the speaker 2008-03-26 20:09:21 +00:00
trap.h Add two DTrace trap type values. Used by fasttrap. 2010-08-24 13:13:24 +00:00
tss.h
ucontext.h Add all segment registers for the amd64 CPU to struct reg and mcontext. 2009-04-01 12:44:17 +00:00
varargs.h
vm.h Add support to the virtual memory system for configuring machine- 2009-07-12 23:31:20 +00:00
vmparam.h Move repeated MAXSLP definition from machine/vmparam.h to sys/vmmeter.h. 2011-01-09 12:50:44 +00:00