freebsd-dev/sys/i386/include
John Baldwin 7e1f6dfe9d Modify the critical section API as follows:
- The MD functions critical_enter/exit are renamed to start with a cpu_
  prefix.
- MI wrapper functions critical_enter/exit maintain a per-thread nesting
  count and a per-thread critical section saved state set when entering
  a critical section while at nesting level 0 and restored when exiting
  to nesting level 0.  This moves the saved state out of spin mutexes so
  that interlocking spin mutexes works properly.
- Most low-level MD code that used critical_enter/exit now use
  cpu_critical_enter/exit.  MI code such as device drivers and spin
  mutexes use the MI wrappers.  Note that since the MI wrappers store
  the state in the current thread, they do not have any return values or
  arguments.
- mtx_intr_enable() is replaced with a constant CRITICAL_FORK which is
  assigned to curthread->td_savecrit during fork_exit().

Tested on:	i386, alpha
2001-12-18 00:27:18 +00:00
..
pc Fixed to draw mouse cursor. The syscons driver for PC98 uses different 2001-12-14 15:27:15 +00:00
_inttypes.h o Add new header <sys/stdint.h>. 2001-11-02 18:05:43 +00:00
_limits.h o Add new header <sys/stdint.h>. 2001-11-02 18:05:43 +00:00
ansi.h o Stop abusing MD headers with non-MD types. 2001-12-01 03:43:01 +00:00
apic.h Remove constants defining the bitmasks of the old giant kernel lock. 2001-04-10 22:22:01 +00:00
apicreg.h Remove constants defining the bitmasks of the old giant kernel lock. 2001-04-10 22:22:01 +00:00
apm_bios.h Add output of per battery information to apm(1). 2000-08-13 17:05:27 +00:00
apm_segments.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
asc_ioctl.h Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
asm.h Fixed the profiling version ALTENTRY(). Again. The previous version 2000-01-25 09:01:55 +00:00
asmacros.h Overhaul the per-CPU support a bit: 2001-12-11 23:33:44 +00:00
atomic.h Use newer constraints for atomic_cmpset(). 2001-11-12 18:53:45 +00:00
bootinfo.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
bus_at386.h - Moved the bus_dma declarations from bus_{at386,pc98}.h into bus_dma.h. 2001-10-06 16:27:21 +00:00
bus_dma.h - Moved the bus_dma declarations from bus_{at386,pc98}.h into bus_dma.h. 2001-10-06 16:27:21 +00:00
bus_memio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
bus_pc98.h Rewrite the pc98 bus_space stuff. 2001-10-07 10:04:18 +00:00
bus_pio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
bus.h - Moved the bus_dma declarations from bus_{at386,pc98}.h into bus_dma.h. 2001-10-06 16:27:21 +00:00
cdk.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
clock.h Reenable RTC interrupts after wakeup. Some laptops have a problem 2001-09-04 16:02:06 +00:00
comstats.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
cpu.h Overhaul the per-CPU support a bit: 2001-12-11 23:33:44 +00:00
cpufunc.h Modify the critical section API as follows: 2001-12-18 00:27:18 +00:00
cputypes.h First shot at identifying the Pentum 4 acording to our reading of the 2000-09-29 04:38:35 +00:00
cronyx.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
db_machdep.h Fill out some gaps in ia64 DDB support. This involves generalising DDB's 2001-09-15 11:06:07 +00:00
dvcfg.h Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
elf.h Make MAXTSIZ, DFLDSIZ, MAXDSIZ, DFLSSIZ, MAXSSIZ, SGROWSIZ loader 2001-10-10 23:06:54 +00:00
endian.h Whitespace fixes so thre 386 versoion of __uint8_swap_uint32 is easier to 2001-11-28 17:10:57 +00:00
exec.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
float.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
floatingpoint.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
frame.h Interrupt frames don't include the saved cpl anymore since cpl is dead. 2000-10-06 01:57:28 +00:00
gsc.h Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
i4b_cause.h update to i4b version 0.95.04 2000-10-09 13:18:17 +00:00
i4b_debug.h Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
i4b_ioctl.h Add a driver for the Compaq Microcom 610 ISDN (Compaq series PSB2222I) ISA PnP 2001-10-21 09:20:52 +00:00
i4b_isppp.h Increase AUTHNAME to 42 bytes for users of T-Online, which requires 41 2001-09-12 08:27:54 +00:00
i4b_rbch_ioctl.h update to isdn4bsd beta release 0.90 1999-12-14 20:54:38 +00:00
i4b_tel_ioctl.h Add experimental support for sending keypad facility messages. 2001-10-18 11:58:49 +00:00
i4b_trace.h update to i4b version 0.95.04 2000-10-09 13:18:17 +00:00
ieeefp.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
if_wl_wavelan.h Fix typo: compatability -> compatibility. 2001-02-06 12:05:58 +00:00
iic.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
in_cksum.h These files are mpsafe. 2000-11-25 03:01:05 +00:00
ioctl_bt848.h Fix typo in comments 2000-10-31 14:30:29 +00:00
ioctl_ctx.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ioctl_meteor.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
legacyvar.h Get out the roto-rooter and clean up the abuse of nexus ivars by the 2000-09-28 00:37:32 +00:00
limits.h o Add new header <sys/stdint.h>. 2001-11-02 18:05:43 +00:00
md_var.h [partially forced commit due to pilot error in earlier commit attempt] 2001-10-21 22:16:48 +00:00
mpapic.h Remove the old APIC I/O higher level IPI API in favor of the newer MI 2001-04-10 22:18:21 +00:00
mptable.h Small cleanups to the SMP code: 2001-12-17 23:14:35 +00:00
mtpr.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
mutex.h Modify the critical section API as follows: 2001-12-18 00:27:18 +00:00
nexusvar.h Get out the roto-rooter and clean up the abuse of nexus ivars by the 2000-09-28 00:37:32 +00:00
npx.h KSE Milestone 2 2001-09-12 08:38:13 +00:00
param.h KSE Milestone 2 2001-09-12 08:38:13 +00:00
pcaudioio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
pcb_ext.h Split the per-process Local Descriptor Table out of the PCB and into 2001-10-25 00:53:43 +00:00
pcb.h Split the per-process Local Descriptor Table out of the PCB and into 2001-10-25 00:53:43 +00:00
pci_cfgreg.h Detect a certain type of PCIBIOS brain damage. For some reason, 2001-08-21 03:10:55 +00:00
pcpu.h Overhaul the per-CPU support a bit: 2001-12-11 23:33:44 +00:00
pcvt_ioctl.h Add support for "green" saver mode. 2000-03-31 08:29:21 +00:00
pecoff_machdep.h Add PECOFF (WIN32 Execution file format) support. 2000-12-20 12:51:08 +00:00
perfmon.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
physio_proc.h Use queue macros. 2001-01-24 00:01:42 +00:00
pmap.h Start bringing i386/pmap.c into line with cleanups that were done to 2001-11-17 01:38:32 +00:00
privatespace.h Overhaul the per-CPU support a bit: 2001-12-11 23:33:44 +00:00
proc.h Overhaul the per-CPU support a bit: 2001-12-11 23:33:44 +00:00
profile.h Add kmupetext(), a function that expands the range of memory covered 2001-10-30 15:04:57 +00:00
psl.h Allow bit 21 of EFLAGS register (PSL_ID) be changed in the use-mode without 2001-11-15 23:01:29 +00:00
ptrace.h Zap 'ptrace(PT_READ_U, ...)' and 'ptrace(PT_WRITE_U, ...)' since they 2001-08-08 05:25:15 +00:00
reg.h [partially forced commit due to pilot error in earlier commit attempt] 2001-10-21 22:16:48 +00:00
reloc.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
resource.h * Implement bus_set/get/delete_resource for pci. 1999-10-14 21:38:33 +00:00
segments.h Add a missing open paren to a macro that's been broken (and apparently 2001-12-04 00:35:28 +00:00
setjmp.h Work around a bug by adding struct tags. gcc-2.95 apparently gets the 2000-10-06 11:53:32 +00:00
sigframe.h style(9) the structure definitions. 2001-09-05 01:36:46 +00:00
signal.h style(9) the structure definitions. 2001-09-05 01:36:46 +00:00
smb.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
smp.h Small cleanups to the SMP code: 2001-12-17 23:14:35 +00:00
smptests.h Remove the BETTER_CLOCK #ifdef's. The code is on by default and is here 2001-04-10 21:34:13 +00:00
speaker.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
specialreg.h Activate SSE/SIMD. This is the extra context switching support that 2001-07-12 06:32:51 +00:00
spigot.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
stdarg.h Fix the typedef of va_list. 2001-10-19 20:07:46 +00:00
sysarch.h Add a couple of debug register helper functions to assist in setting 2000-09-21 17:07:27 +00:00
trap.h Activate SSE/SIMD. This is the extra context switching support that 2001-07-12 06:32:51 +00:00
tss.h Declare or #define per-cpu globals in <machine/globals.h> in all cases. 2000-10-27 08:30:59 +00:00
types.h style(9) 2001-12-09 19:12:07 +00:00
uc_device.h Update sysinstall to use struct uc_device instead of struct isa_device 2000-03-24 22:24:09 +00:00
ucontext.h Add a per-signal flag to mark handlers registered with osigaction, so we 1999-10-11 20:33:17 +00:00
varargs.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm86.h Fixed a missing proc -> thread substitution. 2001-10-03 17:23:26 +00:00
vmparam.h Make sysv-style shared memory tuneable params fully runtime adjustable 2000-03-30 07:17:05 +00:00
wtio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00