freebsd-skq/sys/kern
phk 5551e292d8 Device megapatch 6/6:
This is what we came here for:  Hang dev_t's from their cdevsw,
refcount cdevsw and dev_t and generally keep track of things a lot
better than we used to:

Hold a cdevsw reference around all entrances into the device driver,
this will be necessary to safely determine when we can unload driver
code.

Hold a dev_t reference while the device is open.

KASSERT that we do not enter the driver on a non-referenced dev_t.

Remove old D_NAG code, anonymous dev_t's are not a problem now.

When destroy_dev() is called on a referenced dev_t, move it to
dead_cdevsw's list.  When the refcount drops, free it.

Check that cdevsw->d_version is correct.  If not, set all methods
to the dead_*() methods to prevent entrance into driver.  Print
warning on console to this effect.  The device driver may still
explode if it is also incompatible with newbus, but in that case
we probably didn't get this far in the first place.
2004-02-21 21:57:26 +00:00
..
bus_if.m Introduce BUS_CONFIG_INTR(). The method allows devices to tell parents 2003-09-10 21:37:10 +00:00
clock_if.m
device_if.m
genassym.sh
imgact_aout.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
imgact_elf32.c
imgact_elf64.c
imgact_elf.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
imgact_gzip.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
imgact_shell.c
inflate.c
init_main.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
init_sysent.c Regen after adding ksem_timedwait(). 2004-02-03 05:11:31 +00:00
kern_acct.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
kern_acl.c
kern_alq.c Allow MAC policies to block/revoke kern_alq write access to a file. 2003-10-25 16:10:41 +00:00
kern_clock.c Catch a few places where NULL (pointer) was used where 0 (integer) was 2003-12-23 02:36:43 +00:00
kern_condvar.c - Add a flags parameter to mi_switch. The value of flags may be SW_VOL or 2004-01-25 03:54:52 +00:00
kern_conf.c Device megapatch 6/6: 2004-02-21 21:57:26 +00:00
kern_context.c Change the clear_ret argument of get_mcontext() to be a flags argument. 2003-11-09 20:31:04 +00:00
kern_descrip.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
kern_environment.c
kern_event.c Make sure to wake up any select waiters when closing a kqueue (also, not 2004-02-20 04:00:48 +00:00
kern_exec.c Checkpoint a hack to enable running i386 libc_r binaries on a 64 bit 2004-02-18 00:54:17 +00:00
kern_exit.c A Linux thread created using clone() should not send SIGCHLD to its 2004-02-19 06:43:48 +00:00
kern_fork.c Always set a process' state to normal when it is fully constructed in 2004-02-05 21:01:37 +00:00
kern_idle.c Always set a process' state to normal when it is fully constructed in 2004-02-05 21:01:37 +00:00
kern_intr.c - Add a flags parameter to mi_switch. The value of flags may be SW_VOL or 2004-01-25 03:54:52 +00:00
kern_jail.c Rework jail_attach(2) so that an already jailed process cannot hop 2004-02-19 21:03:20 +00:00
kern_kse.c Use mtx_assert() rather than using a home-rolled version. 2004-01-28 20:26:39 +00:00
kern_kthread.c
kern_ktr.c Update the license on this file to be a bit more sane. 2003-09-10 01:09:32 +00:00
kern_ktrace.c Reduce gratuitous includes: don't include jail.h if it's not needed. 2004-01-21 17:10:47 +00:00
kern_linker.c Avoid NULL pointer dereferencing in modlist_lookup2(). 2003-09-23 14:42:38 +00:00
kern_lock.c Add pid to the info printed in lockmgr_printinfo. This makes VFS 2004-01-06 04:34:13 +00:00
kern_lockf.c
kern_mac.c Coalesce pipe allocations and frees. Previously, the pipe code 2004-02-01 05:56:51 +00:00
kern_malloc.c Rename the kern.vm.kmem.size tunable to the more logical vm.kmem_size. To 2004-01-27 15:59:38 +00:00
kern_mib.c Change all SYSCTLS which are readonly and have a related TUNABLE 2003-10-21 18:28:36 +00:00
kern_module.c
kern_mtxpool.c
kern_mutex.c Add a reset sysctl for mutex profiling: zeros all of the mutex 2004-01-28 22:11:53 +00:00
kern_ntptime.c Deal with MOD_FREQUENCY before MOD_OFFSET because the latter is the 2004-01-24 21:48:43 +00:00
kern_physio.c Send B_PHYS out to pasture, it no longer serves any function. 2003-11-15 09:28:09 +00:00
kern_poll.c - Add a flags parameter to mi_switch. The value of flags may be SW_VOL or 2004-01-25 03:54:52 +00:00
kern_proc.c - Update the sched api. sched_{add,rem,clock,pctcpu} now all accept a td 2003-10-16 08:39:15 +00:00
kern_prot.c Don't grab Giant in crfree(), since prison_free() no longer requires it. 2004-01-23 21:07:52 +00:00
kern_resource.c Argh! Fix a bogon. lim_cur() was returning the hard (max) limit rather 2004-02-11 18:04:13 +00:00
kern_sema.c
kern_shutdown.c - Add a flags parameter to mi_switch. The value of flags may be SW_VOL or 2004-01-25 03:54:52 +00:00
kern_sig.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
kern_subr.c Rename iov_to_uio to uiofromiov to be more consistent with other 2004-02-04 08:43:21 +00:00
kern_switch.c - style fixes to the critical_exit() KASSERT(). 2004-02-02 08:13:27 +00:00
kern_sx.c Simplify check. We are only able to check exclusive lock and if 2004-02-19 14:19:31 +00:00
kern_synch.c - Revert rev 1.240 we no longer need a kthread for loadav(). 2004-02-01 05:37:36 +00:00
kern_syscalls.c
kern_sysctl.c Bring back sysctl_wire_old_buffer(). Fix a bug in sysctl_handle_opaque() 2003-10-05 13:31:33 +00:00
kern_tc.c Write 100 times for tomorrow: 2004-01-22 19:50:06 +00:00
kern_thr.c
kern_thread.c Use mtx_assert() rather than using a home-rolled version. 2004-01-28 20:26:39 +00:00
kern_time.c constify the second args to timevaladd() and timevalsub(). 2003-10-26 02:19:00 +00:00
kern_timeout.c Make the DIAGNOSTIC code which complains about long {call|time}out(9) 2003-12-07 20:03:28 +00:00
kern_umtx.c Return EINVAL if the contested bit is not set on the umtx passed to 2003-09-07 11:14:52 +00:00
kern_uuid.c Fix generation of random multicast MAC address. 2004-01-22 13:34:11 +00:00
kern_xxx.c Correct mostly harmless off-by-one error in getdomainname(). 2003-09-13 17:12:22 +00:00
ksched.c sched_setscheduler: Return EINVAL when a invalid policy is specified, 2003-09-13 18:46:24 +00:00
link_elf_obj.c
link_elf.c
linker_if.m The method link_preload_finish is not static. 2003-09-20 17:39:32 +00:00
Make.tags.inc
Makefile
makesyscalls.sh Remove the namespace column from the syscalls tables. We don't actually 2003-12-23 03:50:43 +00:00
md4c.c
md5c.c
p1003_1b.c
posix4_mib.c
sched_4bsd.c - Disable ithread binding in all cases for now. This doesn't make as much 2004-02-01 06:20:18 +00:00
sched_ule.c - Allow interactive tasks to use the maximum time-slice. This is not as 2004-02-01 10:38:13 +00:00
subr_acl_posix1e.c
subr_autoconf.c
subr_blist.c
subr_bus.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
subr_clist.c
subr_clock.c
subr_devstat.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
subr_disk.c Report bio_pblkbo instead of bio_blkno. 2003-10-18 17:27:10 +00:00
subr_eventhandler.c
subr_hints.c
subr_kobj.c * Add multiple inheritance to kobj. Each class can have zero or more base 2003-10-16 09:16:28 +00:00
subr_log.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
subr_mbpool.c Pass MTX_DEF as the last argument to mtx_init() instead of 0. This 2003-12-07 21:53:41 +00:00
subr_mbuf.c Track current and peak sfbuf usage, export the values via sysctl. 2003-12-27 07:52:47 +00:00
subr_mchain.c
subr_module.c
subr_msgbuf.c Put the message about msgbuf cksum mismatch under bootverbose and tell 2003-09-05 11:12:00 +00:00
subr_param.c
subr_pcpu.c
subr_power.c Move the kernel power change printf under bootverbose since the 2004-01-02 18:24:13 +00:00
subr_prf.c Add support for 'h' and 'hh' modifiers for printf(9). 2004-02-19 05:29:39 +00:00
subr_prof.c
subr_rman.c
subr_rtc.c
subr_sbuf.c Mechanical whistespace cleanup. 2004-02-17 10:21:03 +00:00
subr_scanf.c
subr_smp.c - Move smp_topology to subr_smp.c so that it is defined on all architectures. 2004-01-24 19:52:48 +00:00
subr_taskqueue.c Tidy up the thread taskqueue implementation and close a lost wakeup race. 2004-02-19 22:03:52 +00:00
subr_trap.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
subr_turnstile.c - Add a flags parameter to mi_switch. The value of flags may be SW_VOL or 2004-01-25 03:54:52 +00:00
subr_witness.c Remove a bogus assertion. 2004-02-03 15:14:27 +00:00
sys_generic.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
sys_pipe.c Don't dec/inc the amountpipes counter every time we resize a pipe -- 2004-02-03 04:55:24 +00:00
sys_process.c When reparenting a process in the PT_DETACH code, only set p_sigparent 2004-02-19 10:39:42 +00:00
sys_socket.c
syscalls.c Regen after adding ksem_timedwait(). 2004-02-03 05:11:31 +00:00
syscalls.master Add ksem_timedwait() to complement ksem_wait(). 2004-02-03 05:08:32 +00:00
sysv_ipc.c
sysv_msg.c Slight whitespace consistency improvement: 2003-11-07 04:47:14 +00:00
sysv_sem.c Reduce the overhead of semop() by using the kernel stack instead of 2003-12-19 13:07:17 +00:00
sysv_shm.c Correct a reference counting bug in shmat(2). If vm_map_find(9) 2004-02-05 18:00:35 +00:00
tty_compat.c
tty_conf.c
tty_cons.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
tty_pty.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
tty_subr.c
tty_tty.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
tty.c Device megapatch 3/6: 2004-02-21 20:41:11 +00:00
uipc_accf.c
uipc_cow.c Handle sf_buf_alloc() returning null. This can happen if the 2004-01-17 21:16:51 +00:00
uipc_domain.c
uipc_jumbo.c
uipc_mbuf2.c m_tag fixups in preparation for heavier use: 2004-01-02 17:27:39 +00:00
uipc_mbuf.c Style fixes: don't indent variable names. 2004-02-05 08:29:27 +00:00
uipc_proto.c
uipc_sem.c Add ksem_timedwait() to complement ksem_wait(). 2004-02-03 05:08:32 +00:00
uipc_sockbuf.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
uipc_socket2.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
uipc_socket.c Always socantsendmore() before deallocating a socket. This, in turn, 2004-02-12 01:48:40 +00:00
uipc_syscalls.c Add the SF_NODISKIO flag to sendfile. This flag causes sendfile to be 2004-02-08 07:35:48 +00:00
uipc_usrreq.c Restore correct semantics for F_DUPFD fcntl. This should fix the errors 2004-01-17 00:59:04 +00:00
vfs_acl.c
vfs_aio.c Send B_PHYS out to pasture, it no longer serves any function. 2003-11-15 09:28:09 +00:00
vfs_bio.c Device megapatch 6/6: 2004-02-21 21:57:26 +00:00
vfs_cache.c - Apply a big giant lock around the namecache. This has been sitting in 2003-10-05 07:13:50 +00:00
vfs_cluster.c Update the statfs structure with 64-bit fields to allow 2003-11-12 08:01:40 +00:00
vfs_default.c Remove mntvnode_mtx and replace it with per-mountpoint mutex. 2003-11-05 04:30:08 +00:00
vfs_export.c
vfs_extattr.c Correct a comment. 2004-02-17 12:30:32 +00:00
vfs_init.c Remove opv_desc_vector from vfs_add_vnodeops, since it is defined 2004-02-15 17:27:33 +00:00
vfs_lookup.c
vfs_mount.c Don't ignore errors from vfs_allocate_syncvnode. 2004-02-18 05:20:54 +00:00
vfs_subr.c Device megapatch 6/6: 2004-02-21 21:57:26 +00:00
vfs_syscalls.c Correct a comment. 2004-02-17 12:30:32 +00:00
vfs_vnops.c v_vxproc was a bogus name for a thread (pointer). 2003-12-28 09:12:56 +00:00
vnode_if.src