File:  [MW Coherent from dump] / coherent / f / usr / man / KERNEL / defer
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed May 29 04:56:40 2019 UTC (7 years, 2 months ago) by root
Branches: MarkWilliams, MAIN
CVS tags: relic, HEAD
coherent

ddeeffeerr() -- Accessible Kernel Routine

vvooiidd
ddeeffeerr(_f_u_n_c, _a_r_g)
vvooiidd (*_f_u_n_c)();
cchhaarr *_a_r_g;

ddeeffeerr() defers execution of  function _f_u_n_c with argument _a_r_g.  Execution of
_f_u_n_c remains deferred until the next context switch, transition from kernel
to user mode, or invocation of the function ddeeffeenndd.

Deferred functions  should never call  sleep or access the  uu area, because
the kernel  can switch  uu areas  as part of  context switching.  Up  to 127
functions can be  deferred at any one time.  Exceeding  this limit may lose
all deferred functions.

ddeeffeerr()  is  normally  used  to  minimize  interrupt latency  by  deferring
operations  from  interrupt  level,  where  lower priority  interrupts  are
disabled, to  background level, where all  interrupts are normally enabled.
It is also useful in eliminating critical race conditions between task- and
interrupt-related   operations,    because   deferred   functions   execute
synchronously with each other, with timed functions, and with system calls.

_S_e_e _A_l_s_o
aacccceessssiibbllee kkeerrnneell rroouuttiinneess

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.