freebsd-skq/sys/kern
ed 1475e942ed Introduce a hooks layer for the MPSAFE TTY layer.
One of the features that prevented us from fixing some of the TTY
consumers to work once again, was an interface that allowed consumers to
do the following:

- `Sniff' incoming data, which is used by the snp(4) driver.

- Take direct control of the input and output paths of a TTY, which is
  used by ng_tty(4), ppp(4), sl(4), etc.

There's no practical advantage in committing a hooks layer without
having any consumers. In P4 there is a preliminary port of snp(4) and
thompsa@ is busy porting ng_tty(4) to this interface. I already want to
have it in the tree, because this may stimulate others to work on the
remaining modules.

Discussed with:	thompsa
Obtained from:	//depot/projects/mpsafetty/...
2008-09-22 19:25:14 +00:00
..
bus_if.m Implement a BUS_BIND_INTR() method in the bus interface to bind an IRQ 2008-03-20 21:24:32 +00:00
clock_if.m
cpufreq_if.m
device_if.m
genassym.sh refactor code so it can run in a chroot without having to have /dev/mounted 2008-01-18 17:02:14 +00:00
imgact_aout.c
imgact_elf32.c
imgact_elf64.c
imgact_elf.c Go back to using the process command name (p_comm) for the file name and 2008-05-15 03:07:34 +00:00
imgact_gzip.c
imgact_shell.c Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
inflate.c
init_main.c remove scheduler_running as xenbus no longer needs it 2008-08-20 09:21:24 +00:00
init_sysent.c Regenerate following r182123. 2008-08-24 21:23:08 +00:00
kern_acct.c Properly lock proctree_lock before locking the process while accounting. 2008-08-21 15:02:17 +00:00
kern_alq.c Use msleep_spin() instead of unlock/tsleep/lock. This was 2008-07-02 20:44:33 +00:00
kern_clock.c Implement per-cpu callout threads, wheels, and locks. 2008-04-02 11:20:30 +00:00
kern_condvar.c Permit Giant to be passed as the explicit interlock either to 2008-08-07 21:00:13 +00:00
kern_conf.c Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
kern_context.c
kern_cpu.c Fix a few edge cases with error handling in cpufreq(4)'s CPUFREQ_GET() 2008-05-05 19:13:52 +00:00
kern_cpuset.c Add a `show cpusets' DDB command to print numbered root and 2008-07-07 21:32:02 +00:00
kern_ctf.c Add the CTF source file which gets shared with link_elf.c and link_elf_obj.c. 2008-05-23 03:04:27 +00:00
kern_descrip.c Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
kern_dtrace.c Remove code that isn't required. It actually breaks the case where KDTRACE_HOOKS 2008-06-16 04:44:29 +00:00
kern_environment.c Implement the following macros for completeness: 2008-07-21 15:05:25 +00:00
kern_event.c The kqueue_register() function assumes that it is called from the top of 2008-07-07 09:30:11 +00:00
kern_exec.c Remove VSVTX, VSGID and VSUID. This should be a no-op, 2008-09-10 13:16:41 +00:00
kern_exit.c Don't remove queued SIGCHLD if options contain WNOWAIT, so other 2008-08-29 01:34:05 +00:00
kern_fork.c Do the pargs_hold() on the copy of the pointer to the p_args of the 2008-07-23 08:45:25 +00:00
kern_idle.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
kern_intr.c Expose a new public routine intr_event_execute_handlers() which executes 2008-09-15 22:19:44 +00:00
kern_jail.c Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
kern_kthread.c Kill a dead variable 2008-08-03 21:07:19 +00:00
kern_ktr.c
kern_ktrace.c This patch adds a new ktrace(2) record type, KTR_STRUCT, whose payload 2008-02-23 01:01:49 +00:00
kern_linker.c Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
kern_lock.c Teach WITNESS about the interlocks used with lockmgr. This removes a bunch 2008-09-10 19:13:30 +00:00
kern_lockf.c Re-implement the client side of rpc.lockd in the kernel. This implementation 2008-06-26 10:21:54 +00:00
kern_malloc.c Enable the creation of a kmem map larger than 4GB. 2008-07-05 19:34:33 +00:00
kern_mbuf.c Reintroduce UMA_SLAB_KMAP; however, change its spelling to 2008-04-04 18:41:12 +00:00
kern_mib.c Fix a typo in r180291 2008-08-28 23:52:34 +00:00
kern_module.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
kern_mtxpool.c
kern_mutex.c Teach WITNESS about the interlocks used with lockmgr. This removes a bunch 2008-09-10 19:13:30 +00:00
kern_ntptime.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
kern_physio.c
kern_pmc.c Support sparsely numbered CPUs. 2008-09-22 10:37:02 +00:00
kern_poll.c Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
kern_priv.c Remove the suser(9) interface from the kernel. It has been replaced from 2008-09-17 15:49:44 +00:00
kern_proc.c Fix minor TTY API inconsistency. 2008-09-16 14:57:23 +00:00
kern_prot.c
kern_resource.c Fix a small typo in a comment in calcru1(). 2008-09-05 15:55:06 +00:00
kern_rmlock.c Teach WITNESS about the interlocks used with lockmgr. This removes a bunch 2008-09-10 19:13:30 +00:00
kern_rwlock.c Teach WITNESS about the interlocks used with lockmgr. This removes a bunch 2008-09-10 19:13:30 +00:00
kern_sdt.c Add kernel support for the Statically Defined Trace provider. 2008-05-18 19:32:36 +00:00
kern_sema.c
kern_shutdown.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
kern_sig.c Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
kern_subr.c Make ureadc() warn when holding any locks, just like uiomove(). 2008-08-28 19:34:58 +00:00
kern_switch.c fix typo in runz_fuzz 2008-05-12 06:42:06 +00:00
kern_sx.c Teach WITNESS about the interlocks used with lockmgr. This removes a bunch 2008-09-10 19:13:30 +00:00
kern_synch.c Remove the now unused `lbolt' variable from the kernel. 2008-08-20 12:20:22 +00:00
kern_syscalls.c Various style fixes. 7 space indent is just odd. 2008-09-18 20:10:11 +00:00
kern_sysctl.c
kern_tc.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
kern_thr.c Fix compiling problem. 2008-04-29 05:48:05 +00:00
kern_thread.c A suspended thread can, in fact, be swapped out. Thus, 2008-08-22 16:15:58 +00:00
kern_time.c
kern_timeout.c add callout_schedule; besides being useful it also improves 2008-08-02 17:42:38 +00:00
kern_umtx.c Add two commands to _umtx_op system call to allow a simple mutex to be 2008-06-24 07:32:12 +00:00
kern_uuid.c Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
kern_xxx.c Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
ksched.c
link_elf_obj.c Calling linker_load_dependencies() while holding the module' 2008-08-03 13:33:45 +00:00
link_elf.c Calling linker_load_dependencies() while holding the module' 2008-08-03 13:33:45 +00:00
linker_if.m Add the ctf_get method. 2008-05-23 04:06:49 +00:00
Make.tags.inc Remove netatm from HEAD as it is not MPSAFE and relies on the now removed 2008-05-25 22:11:40 +00:00
Makefile
makesyscalls.sh Generate another function for the DTrace syscall provider to specify 2008-03-27 01:53:44 +00:00
md4c.c
md5c.c
p1003_1b.c Remove kernel support for M:N threading. 2008-03-12 10:12:01 +00:00
posix4_mib.c
sched_4bsd.c When choosing a CPU for a thread in a cpuset, prefer the last CPU that the 2008-07-28 20:39:21 +00:00
sched_ule.c - Check whether we've recorded this tick in ts_ticks on another cpu in 2008-07-19 05:13:47 +00:00
serdev_if.m
stack_protector.c Fix a chicken-and-egg problem: this files implements SSP support, 2008-06-26 07:52:45 +00:00
subr_acl_posix1e.c
subr_autoconf.c If run_interrupt_driven_config_hooks() waits 360 seconds and INVARIANTS 2008-07-21 20:50:49 +00:00
subr_blist.c add malloc flag to blist so that it can be used in ithread context 2008-05-05 19:48:54 +00:00
subr_bus.c Split out the probing magic of device_probe_and_attach into 2008-06-20 16:58:15 +00:00
subr_clist.c Now that the number of clist consumers have dropped massively, trim down 2008-09-21 18:12:18 +00:00
subr_clock.c Now that all platforms use genclock, shuffle things around slightly 2008-04-22 19:38:30 +00:00
subr_devstat.c
subr_disk.c
subr_eventhandler.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
subr_fattime.c
subr_firmware.c Do image loading in a context known to have a root directory: 2008-04-09 19:07:48 +00:00
subr_hints.c
subr_kdb.c Expand kdb_alt_break a little, most commonly used with the option 2008-05-04 23:29:38 +00:00
subr_kobj.c
subr_lock.c - track maximum wait time 2008-07-27 21:45:20 +00:00
subr_log.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
subr_mbpool.c
subr_mchain.c Replaced the misleading uses of a historical artefact M_TRYWAIT with M_WAIT. 2008-03-25 09:39:02 +00:00
subr_module.c
subr_msgbuf.c
subr_param.c Correct an error in the comments for init_param3(). 2008-07-04 19:36:58 +00:00
subr_pcpu.c Make ddb command registration dynamic so modules can extend 2008-09-15 22:45:14 +00:00
subr_power.c
subr_prf.c Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
subr_prof.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
subr_rman.c Make ddb command registration dynamic so modules can extend 2008-09-15 22:45:14 +00:00
subr_rtc.c Now that all platforms use genclock, shuffle things around slightly 2008-04-22 19:38:30 +00:00
subr_sbuf.c Switch to simplified BSD license (with phk's approval), plus whitespace 2008-08-09 10:26:21 +00:00
subr_scanf.c
subr_sleepqueue.c Make ddb command registration dynamic so modules can extend 2008-09-15 22:45:14 +00:00
subr_smp.c - Only count the number of CPUs in the rendezvous map once rather than 2008-08-27 18:23:55 +00:00
subr_stack.c Staticize M_STACK. 2008-07-13 17:15:05 +00:00
subr_taskqueue.c revert local change 2008-07-18 07:10:33 +00:00
subr_trap.c - Make SCHED_STATS more generic by adding a wrapper to create the 2008-04-17 04:20:10 +00:00
subr_turnstile.c Make ddb command registration dynamic so modules can extend 2008-09-15 22:45:14 +00:00
subr_unit.c
subr_witness.c Make ddb command registration dynamic so modules can extend 2008-09-15 22:45:14 +00:00
sys_generic.c - Remove stale comment. 2008-03-19 07:33:16 +00:00
sys_pipe.c Another problem caused by the knlist_cleardel() potentially dropping 2008-05-23 11:14:03 +00:00
sys_process.c - Relax requirements for p_numthreads, p_threads, p_swtick, and p_nice from 2008-03-19 06:19:01 +00:00
sys_socket.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
syscalls.c Regenerate following r182123. 2008-08-24 21:23:08 +00:00
syscalls.master When MPSAFE ttys were merged, a new BSM audit event identifier was 2008-08-24 21:20:35 +00:00
systrace_args.c Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
sysv_ipc.c
sysv_msg.c
sysv_sem.c Renew semaphore's pointer after wakeup since during msleep 2008-06-19 18:08:42 +00:00
sysv_shm.c Make sure we restrict Linux only IPC calls from being executed 2008-02-12 20:55:03 +00:00
tty_compat.c Fix an awful bug inside our COMPAT_43TTY code. 2008-09-04 16:30:53 +00:00
tty_cons.c Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
tty_info.c Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
tty_inq.c Fix some edge cases in the TTY queues: 2008-08-30 09:18:27 +00:00
tty_outq.c Fix some edge cases in the TTY queues: 2008-08-30 09:18:27 +00:00
tty_pts.c Make fstat() on a pseudo-terminal master return sane timestamps. 2008-09-21 19:24:15 +00:00
tty_pty.c Allow the user to suppress the rate-limited pty(4) warning. 2008-08-23 16:03:00 +00:00
tty_tty.c Remove unneeded Giant locking of /dev/tty. 2008-06-03 12:38:00 +00:00
tty_ttydisc.c Introduce a hooks layer for the MPSAFE TTY layer. 2008-09-22 19:25:14 +00:00
tty.c Introduce a hooks layer for the MPSAFE TTY layer. 2008-09-22 19:25:14 +00:00
uipc_accf.c
uipc_cow.c Give MEXTADD() another argument to make both void pointers to the 2008-02-01 19:36:27 +00:00
uipc_debug.c Change a variable name to not shadow a global 2008-07-03 08:35:59 +00:00
uipc_domain.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
uipc_mbuf2.c
uipc_mbuf.c Remove the alignment of the align parameter. This is up to the caller to pass 2008-09-05 04:05:31 +00:00
uipc_mqueue.c fdescfs, devfs, mqueuefs, nfs, portalfs, pseudofs, tmpfs and xfs 2008-09-20 19:50:52 +00:00
uipc_sem.c Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00
uipc_shm.c Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00
uipc_sockbuf.c Catch a possible NULL pointer deref in case the offsets got mangled 2008-09-07 13:09:04 +00:00
uipc_socket.c Remove XXXRW in soreceive_dgram that proves unnecessary. 2008-09-02 16:55:21 +00:00
uipc_syscalls.c When sendto(2) is called with an explicit destination address 2008-05-22 07:18:54 +00:00
uipc_usrreq.c Fill in a few sysctl descriptions. 2008-07-26 00:55:35 +00:00
vfs_acl.c Add the support for the AT_FDCWD and fd-relative name lookups to the 2008-03-31 12:01:21 +00:00
vfs_aio.c Use minimum of max_aio_procs and target_aio_procs when spawning new 2008-06-21 11:34:34 +00:00
vfs_bio.c Add the ffs structures introspection functions for ddb. 2008-09-16 11:19:38 +00:00
vfs_cache.c Sort includes. 2008-09-18 20:04:22 +00:00
vfs_cluster.c - Complete part of the unfinished bufobj work by consistently using 2008-03-22 09:15:16 +00:00
vfs_default.c Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
vfs_export.c Provide the mutual exclusion between the nfs export list modifications 2008-06-09 10:31:38 +00:00
vfs_extattr.c Add the support for the AT_FDCWD and fd-relative name lookups to the 2008-03-31 12:01:21 +00:00
vfs_hash.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
vfs_init.c
vfs_lookup.c Decontextualize vfs_busy(), vfs_unbusy() and vfs_mount_alloc() functions. 2008-08-31 14:26:08 +00:00
vfs_mount.c Add freebsd32 compat shim for nmount(2). 2008-09-19 15:17:32 +00:00
vfs_subr.c Decontextualize vfs_busy(), vfs_unbusy() and vfs_mount_alloc() functions. 2008-08-31 14:26:08 +00:00
vfs_syscalls.c When setting error to EINVAL in 'fvp == tdvp' case, jump to out label, 2008-09-01 10:11:39 +00:00
vfs_vnops.c Initialize va_rdev to NODEV and va_fsid to VNOVAL before the 2008-09-20 19:48:24 +00:00
vnode_if.src Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00