freebsd-dev/sys/i386/i386
Marcel Moolenaar 409a390c33 Use io(4) for I/O port access on ia64, rather than through sysarch(2).
I/O port access is implemented on Itanium by reading and writing to a
special region in memory. To hide details and avoid misaligned memory
accesses, a process did I/O port reads and writes by making a MD system
call. There's one fatal problem with this approach: unprivileged access
was not being prevented. /dev/io serves that purpose on amd64/i386, so
employ it on ia64 as well. Use an ioctl for doing the actual I/O and
remove the sysarch(2) interface.

Backward compatibility is not being considered. The sysarch(2) approach
was added to support X11, but support for FreeBSD/ia64 was never fully
implemented in X11. Thus, nothing gets broken that didn't need more work
to begin with.

MFC after:	1 week
2010-01-11 18:10:13 +00:00
..
apic_vector.s don't globally define ipi_bitmap_handler on xen 2008-10-21 08:01:19 +00:00
atomic.c
autoconf.c
bios.c MFp4: 2008-11-02 18:48:54 +00:00
bioscall.s
bpf_jit_machdep.c - Add more aggressive BPF JIT optimization. This is in more favor of i386 2009-11-23 22:23:19 +00:00
bpf_jit_machdep.h - Add more aggressive BPF JIT optimization. This is in more favor of i386 2009-11-23 22:23:19 +00:00
busdma_machdep.c Reduce the number of bounce zones (and thus the number of bounce pages 2009-04-23 20:24:19 +00:00
db_disasm.c Decode some more "exotic" instructions including: fxsave, fxrstor, ldmxcsr, 2008-08-11 20:19:42 +00:00
db_interface.c
db_trace.c Frames created by the Xcpustop, Xrendezvous, Xipi_intr_bitmap_handler 2008-09-27 15:54:04 +00:00
dump_machdep.c - revert pmap_kenter_temporary to taking a physical address 2009-12-10 03:09:35 +00:00
elan-mmcr.c Update d_mmap() to accept vm_ooffset_t and vm_memattr_t. 2009-12-29 21:51:28 +00:00
elf_machdep.c Make sure that the primary native brandinfo always gets added 2009-10-03 11:57:21 +00:00
exception.s - Bug fix: prevent a thread from migrating between CPUs between the 2008-12-13 13:07:12 +00:00
gdb_machdep.c
genassym.c Remove the old kernel RPC implementation and the NFS_LEGACYRPC option. 2009-06-30 19:03:27 +00:00
geode.c Add support for PC Engines ALIX boards. 2008-02-10 19:14:42 +00:00
i686_mem.c Initial suspend/resume support for amd64. 2009-03-17 00:48:11 +00:00
identcpu.c x86 cpu features: add MOVBE reporting and flag 2009-11-30 11:11:08 +00:00
in_cksum.c Trim comments about the MP-safety of various bits of the amd64/i386 2009-03-09 13:11:16 +00:00
initcpu.c - Style nits. 2009-11-12 03:31:19 +00:00
intr_machdep.c Move intr_describe() out of #ifdef SMP; the function is always required. 2009-10-16 12:00:59 +00:00
io_apic.c After the per-CPU IDT changes, the IDT vector of an interrupt could change 2009-07-06 18:23:00 +00:00
io.c Use io(4) for I/O port access on ia64, rather than through sysarch(2). 2010-01-11 18:10:13 +00:00
k6_mem.c Initial suspend/resume support for amd64. 2009-03-17 00:48:11 +00:00
legacy.c Rework how the nexus(4) device works on x86 to better handle the idea of 2008-03-13 20:39:04 +00:00
local_apic.c Don't attempt to bind the current thread to the CPU an IRQ is bound to 2009-09-02 00:39:59 +00:00
locore.s Simplify pmap_init(). Additionally, correct a harmless misbehavior on i386. 2010-01-11 16:01:20 +00:00
longrun.c Introduce cpu_vendor_id and replace a lot of strcmp(cpu_vendor, "..."). 2008-11-26 19:25:13 +00:00
machdep.c make PV core dump actually dump memory - still need to fix program header initialization 2009-12-09 08:09:25 +00:00
mca.c mca: small enhancements related to cpu quirks 2009-12-03 16:10:21 +00:00
mem.c Update d_mmap() to accept vm_ooffset_t and vm_memattr_t. 2009-12-29 21:51:28 +00:00
minidump_machdep.c for PV XEN translate page table entries from machine (real) to physical (logical) addresses so that kgdb can 2009-12-10 07:48:47 +00:00
mp_clock.c Despite several examples in the kernel, the third argument of 2007-06-04 18:25:08 +00:00
mp_machdep.c * Completely Remove the option STOP_NMI from the kernel. This option 2009-08-13 17:09:45 +00:00
mp_watchdog.c Add a new 'why' argument to kdb_enter(), and a set of constants to use 2007-12-25 17:52:02 +00:00
mpboot.s
mptable_pci.c Revamp the MSI/MSI-X code a bit to achieve two main goals: 2007-05-02 17:50:36 +00:00
mptable.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
msi.c Consolidate CPUID to CPU family/model macros for amd64 and i386 to reduce 2009-09-10 17:27:36 +00:00
nexus.c Add a facility for associating optional descriptions with active interrupt 2009-10-15 14:54:35 +00:00
perfmon.c
pmap.c Simplify pmap_init(). Additionally, correct a harmless misbehavior on i386. 2010-01-11 16:01:20 +00:00
ptrace_machdep.c Use the method described in IA-32 Intel Architecture Software Developer's 2006-05-30 23:44:21 +00:00
stack_machdep.c Remove duplicate $FreeBSD$ tag. 2007-12-02 21:07:49 +00:00
support.s Integrate support for xen in to i386 common code. 2008-08-15 20:51:31 +00:00
swtch.s Change some movl's to mov's. Newer GAS no longer accept 'movl' instructions 2009-01-31 11:37:21 +00:00
symbols.raw
sys_machdep.c Replace AUDIT_ARG() with variable argument macros with a set more more 2009-06-27 13:58:44 +00:00
trap.c Simplify the invocation of vm_fault(). Specifically, eliminate the flag 2009-11-27 20:24:11 +00:00
tsc.c Fix 'kern.timeconter.invariant_tsc' tunable and back out a redundant hack. 2008-10-21 04:31:07 +00:00
uio_machdep.c
vm86.c Change the functions to ANSI in those cases where it breaks promotion 2009-02-24 18:09:31 +00:00
vm86bios.s Evidently FreeBSD has long relied on the compiler to treat structures 2006-12-17 05:07:01 +00:00
vm_machdep.c Extract the code that records syscall results in the frame into MD 2009-11-10 11:43:07 +00:00