freebsd-src/sys/kern
John Baldwin 8088699f79 - Overhaul the software interrupt code to use interrupt threads for each
type of software interrupt.  Roughly, what used to be a bit in spending
  now maps to a swi thread.  Each thread can have multiple handlers, just
  like a hardware interrupt thread.
- Instead of using a bitmask of pending interrupts, we schedule the specific
  software interrupt thread to run, so spending, NSWI, and the shandlers
  array are no longer needed.  We can now have an arbitrary number of
  software interrupt threads.  When you register a software interrupt
  thread via sinthand_add(), you get back a struct intrhand that you pass
  to sched_swi() when you wish to schedule your swi thread to run.
- Convert the name of 'struct intrec' to 'struct intrhand' as it is a bit
  more intuitive.  Also, prefix all the members of struct intrhand with
  'ih_'.
- Make swi_net() a MI function since there is now no point in it being
  MD.

Submitted by:	cp
2000-10-25 05:19:40 +00:00
..
bus_if.m Add new bus method 'GET_RESOURCE_LIST' and appropriate generic 2000-10-18 05:15:40 +00:00
device_if.m * Factor out the object system from new-bus so that it can be used by 2000-04-08 14:17:18 +00:00
genassym.sh Use "nm | awk ..." instead of genassym(1) to generate symbol value headers. 2000-06-02 09:27:48 +00:00
imgact_aout.c Add three new VOPs: VOP_CREATEVOBJECT, VOP_DESTROYVOBJECT and VOP_GETVOBJECT. 2000-09-12 09:49:08 +00:00
imgact_elf.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
imgact_gzip.c useracc() the prequel: 1999-10-29 18:09:36 +00:00
imgact_shell.c Fix #! script exec under linux emulation. If a script is exec'd from a 2000-04-26 20:58:40 +00:00
inflate.c Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 05:07:58 +00:00
init_main.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
init_sysent.c Regen: fix prototypes for {o|}{g|s}etrlimit. 2000-08-28 07:56:38 +00:00
kern_acct.c Move the truncation code out of vn_open and into the open system call 2000-07-04 03:34:11 +00:00
kern_acl.c o Change locking rules for VOP_GETACL() to indicate that vnode locks 2000-09-21 18:43:32 +00:00
kern_cap.c o Simplify capability types away from an array of ints to a single 2000-10-13 17:12:58 +00:00
kern_clock.c - Overhaul the software interrupt code to use interrupt threads for each 2000-10-25 05:19:40 +00:00
kern_conf.c Rename lminor() to dev2unit(). This function gives a linear unit number 2000-09-19 10:28:44 +00:00
kern_descrip.c Avoid the modules madness I inadvertently introduced by making the 2000-09-02 19:17:34 +00:00
kern_environment.c Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
kern_event.c o Centralize inter-process access control, introducing: 2000-08-30 04:49:09 +00:00
kern_exec.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_exit.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_fork.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_idle.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_intr.c - Overhaul the software interrupt code to use interrupt threads for each 2000-10-25 05:19:40 +00:00
kern_jail.c o Modify jail to limit creation of sockets to UNIX domain sockets, 2000-06-04 04:28:31 +00:00
kern_kthread.c Reparent a kernel thread to init during kthread_exit() so that the zombie 2000-10-19 19:53:44 +00:00
kern_ktr.c Add KTR, a facility that logs kernel events in order to to facilitate 2000-09-07 01:29:44 +00:00
kern_ktrace.c Add KTR, a facility that logs kernel events in order to to facilitate 2000-09-07 01:29:44 +00:00
kern_linker.c Add a workaround for statically linked kernels. 2000-10-04 17:40:24 +00:00
kern_lock.c - machine/mutex.h -> sys/mutex.h 2000-10-20 07:28:00 +00:00
kern_lockf.c Commit the remaining part of PR14914: 1999-11-16 16:28:58 +00:00
kern_malloc.c Introduce the M_ZERO flag to malloc(9) 2000-10-20 17:54:55 +00:00
kern_mib.c Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
kern_module.c Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
kern_mutex.c Quite some warnings. 2000-10-25 04:37:54 +00:00
kern_ntptime.c Updates to the ntp pll from John Hay. 2000-09-10 09:13:34 +00:00
kern_physio.c Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
kern_proc.c Major update to the way synchronization is done in the kernel. Highlights 2000-09-07 01:33:02 +00:00
kern_prot.c Remove uidinfo hash table lookup and maintenance out of chgproccnt() and 2000-09-05 22:11:13 +00:00
kern_resource.c Add new line character to debugging printf's. 2000-09-18 17:03:03 +00:00
kern_shutdown.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_sig.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_subr.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_switch.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_synch.c - GC some #if 0'd code regarding the non-existant safepri variable. 2000-10-20 07:52:10 +00:00
kern_syscalls.c Trim unused options (or #ifdef for undoc options). 1999-10-11 15:19:12 +00:00
kern_sysctl.c Fix some style nits. 2000-07-28 22:40:04 +00:00
kern_tc.c Major update to the way synchronization is done in the kernel. Highlights 2000-09-07 01:33:02 +00:00
kern_threads.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
kern_time.c Remove unneeded <sys/buf.h> includes. 2000-04-18 15:15:39 +00:00
kern_timeout.c - Overhaul the software interrupt code to use interrupt threads for each 2000-10-25 05:19:40 +00:00
kern_xxx.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ksched.c Remove unneeded #include <sys/kernel.h> 2000-04-29 15:36:14 +00:00
link_aout.c Change the conditionaal so that we only build this on i386 instead of 2000-09-29 13:32:24 +00:00
link_elf.c Correct a warning where the r_debug_state() dummy function used to trigger 2000-10-06 05:20:02 +00:00
link_elf_obj.c Correct a warning where the r_debug_state() dummy function used to trigger 2000-10-06 05:20:02 +00:00
linker_if.m First round implementation of a fine grain enhanced module to module 2000-04-29 13:19:31 +00:00
Make.tags.inc Update tags directive to reflect the new location of soft updates 2000-07-04 00:18:43 +00:00
makedevops.pl Put the header section in the header file not the c file. 2000-10-15 15:19:35 +00:00
Makefile ${MACHINE} -> ${MACHINE_ARCH} 1999-11-14 13:54:44 +00:00
makeobjops.pl * Factor out the object system from new-bus so that it can be used by 2000-04-08 14:17:18 +00:00
makesyscalls.sh Change the 'exit()' system call to 'sys_exit()'. This avoids overlapping 2000-07-29 00:16:28 +00:00
md5c.c Add ia64 support. 2000-09-29 13:36:47 +00:00
p1003_1b.c Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
posix4_mib.c Add $FreeBSD$. 2000-04-22 15:13:06 +00:00
subr_acl_posix1e.c o Change locking rules for VOP_GETACL() to indicate that vnode locks 2000-09-21 18:43:32 +00:00
subr_autoconf.c Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
subr_blist.c Eliminate the undocumented, experimental, non-delivering and highly 2000-03-16 08:51:55 +00:00
subr_bus.c Add new bus method 'GET_RESOURCE_LIST' and appropriate generic 2000-10-18 05:15:40 +00:00
subr_clist.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
subr_devstat.c Support for unsigned integer and long sysctl variables. Update the 2000-07-05 07:46:41 +00:00
subr_disk.c Avoid the modules madness I inadvertently introduced by making the 2000-09-02 19:17:34 +00:00
subr_disklabel.c Turn dkcksum() into an __inline function. 2000-09-16 13:43:00 +00:00
subr_diskmbr.c Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
subr_diskslice.c Avoid the modules madness I inadvertently introduced by making the 2000-09-02 19:17:34 +00:00
subr_eventhandler.c - Make the eventhandler_mutex mutex a private variable in 2000-10-25 00:01:39 +00:00
subr_kobj.c Add kobj_class_compile_static() to allow classes to be initialised 2000-08-28 21:11:12 +00:00
subr_log.c Remove five now unused fields from struct cdevsw. They should never 1999-09-25 18:24:47 +00:00
subr_module.c Trim unused options (or #ifdef for undoc options). 1999-10-11 15:19:12 +00:00
subr_param.c For lockmgr mutex protection, use an array of mutexes that are allocated 2000-10-12 22:37:28 +00:00
subr_prf.c Treat %X the same as %x (not entirely correct, but close enough). 2000-10-02 07:13:10 +00:00
subr_prof.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
subr_rman.c Cleanup the rman_make_alignment_flags function to be much clearer and shorter 2000-10-22 04:48:11 +00:00
subr_scanf.c Change the prototype of the strto* routines to make the second 1999-11-24 01:03:08 +00:00
subr_smp.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
subr_taskqueue.c - Overhaul the software interrupt code to use interrupt threads for each 2000-10-25 05:19:40 +00:00
subr_trap.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
subr_turnstile.c Quite some warnings. 2000-10-25 04:37:54 +00:00
subr_witness.c Quite some warnings. 2000-10-25 04:37:54 +00:00
subr_xxx.c Remove five now unused fields from struct cdevsw. They should never 1999-09-25 18:24:47 +00:00
sys_generic.c Fix a warning that has been annoying me for some time: 2000-07-28 22:17:42 +00:00
sys_pipe.c Pipes are not writeable while a direct write is in progress. However, 2000-09-14 20:10:19 +00:00
sys_process.c Remove the signal value check from the PT_STEP codepath. It 2000-10-14 03:56:01 +00:00
sys_socket.c Instead of just blindly setting -rw-rw-rw-: 2000-07-02 23:56:45 +00:00
syscalls.c Regen: fix prototypes for {o|}{g|s}etrlimit. 2000-08-28 07:56:38 +00:00
syscalls.master Fix prototypes for {o|}{g|s}etrlimit. A recent change in the 2000-08-28 07:50:44 +00:00
sysv_ipc.c Remove the undocumented, flawed, broken-as-designed semconfig() syscall. 2000-05-01 11:13:41 +00:00
sysv_msg.c Fully initialize msqids[]. This could lead to ENOSPC and other strange 2000-09-19 22:59:22 +00:00
sysv_sem.c Move the MSG* and SEM* options to opt_sysvipc.h 2000-05-01 13:33:56 +00:00
sysv_shm.c This is a cleanup patch to Peter's new OBJT_PHYS VM object type 2000-05-29 22:40:54 +00:00
tty.c Major update to the way synchronization is done in the kernel. Highlights 2000-09-07 01:33:02 +00:00
tty_compat.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
tty_conf.c Don't refer to TABLDISC in the comments here. 2000-01-30 10:14:13 +00:00
tty_cons.c Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
tty_pty.c Rename lminor() to dev2unit(). This function gives a linear unit number 2000-09-19 10:28:44 +00:00
tty_snoop.c Unstaticize this driver. You can have as many snoop devices as you can 2000-04-02 00:35:37 +00:00
tty_subr.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
tty_tty.c Add snapshots to the fast filesystem. Most of the changes support 2000-07-11 22:07:57 +00:00
uipc_accf.c Accept filter maintainance 2000-09-06 18:49:13 +00:00
uipc_domain.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
uipc_mbuf.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
uipc_mbuf2.c Replace the mbuf external reference counting code with something 2000-08-19 08:32:59 +00:00
uipc_proto.c Trim unused options (or #ifdef for undoc options). 1999-10-11 15:19:12 +00:00
uipc_sockbuf.c Remove uidinfo hash table lookup and maintenance out of chgproccnt() and 2000-09-05 22:11:13 +00:00
uipc_socket.c Check so_error in filt_so{read|write} in order to detect UDP errors. 2000-09-28 04:41:22 +00:00
uipc_socket2.c Remove uidinfo hash table lookup and maintenance out of chgproccnt() and 2000-09-05 22:11:13 +00:00
uipc_syscalls.c Add three new VOPs: VOP_CREATEVOBJECT, VOP_DESTROYVOBJECT and VOP_GETVOBJECT. 2000-09-12 09:49:08 +00:00
uipc_usrreq.c Remove uidinfo hash table lookup and maintenance out of chgproccnt() and 2000-09-05 22:11:13 +00:00
vfs_acl.c o Change locking rules for VOP_GETACL() to indicate that vnode locks 2000-09-21 18:43:32 +00:00
vfs_aio.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_bio.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_cache.c Add new flag PDIRUNLOCK to the component.cn_flags which should be set by 2000-09-17 07:26:42 +00:00
vfs_cluster.c Virtualizes & untangles the bioops operations vector. 2000-06-16 08:48:51 +00:00
vfs_conf.c Convert lockmgr locks from using simple locks to using mutexes. 2000-10-04 01:29:17 +00:00
vfs_default.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_export.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_extattr.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_init.c Do not panic on an uninitialized VOP_xxx() call. This was meant as a 2000-09-06 17:51:54 +00:00
vfs_lookup.c Add new flag PDIRUNLOCK to the component.cn_flags which should be set by 2000-09-17 07:26:42 +00:00
vfs_mount.c Convert lockmgr locks from using simple locks to using mutexes. 2000-10-04 01:29:17 +00:00
vfs_subr.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_syscalls.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vfs_vnops.c Catch up to moving headers: 2000-10-20 07:58:15 +00:00
vnode_if.pl remove crufty exec stuff, perl is in the base system 2000-06-27 19:09:55 +00:00
vnode_if.src o Change locking rules for VOP_GETACL() to indicate that vnode locks 2000-09-21 18:43:32 +00:00