Annotation of coherent/f/usr/man/KERNEL/defer, revision 1.1

1.1     ! root        1: ddeeffeerr() -- Accessible Kernel Routine
        !             2: 
        !             3: vvooiidd
        !             4: ddeeffeerr(_f_u_n_c, _a_r_g)
        !             5: vvooiidd (*_f_u_n_c)();
        !             6: cchhaarr *_a_r_g;
        !             7: 
        !             8: ddeeffeerr() defers execution of  function _f_u_n_c with argument _a_r_g.  Execution of
        !             9: _f_u_n_c remains deferred until the next context switch, transition from kernel
        !            10: to user mode, or invocation of the function ddeeffeenndd.
        !            11: 
        !            12: Deferred functions  should never call  sleep or access the  uu area, because
        !            13: the kernel  can switch  uu areas  as part of  context switching.  Up  to 127
        !            14: functions can be  deferred at any one time.  Exceeding  this limit may lose
        !            15: all deferred functions.
        !            16: 
        !            17: ddeeffeerr()  is  normally  used  to  minimize  interrupt latency  by  deferring
        !            18: operations  from  interrupt  level,  where  lower priority  interrupts  are
        !            19: disabled, to  background level, where all  interrupts are normally enabled.
        !            20: It is also useful in eliminating critical race conditions between task- and
        !            21: interrupt-related   operations,    because   deferred   functions   execute
        !            22: synchronously with each other, with timed functions, and with system calls.
        !            23: 
        !            24: _S_e_e _A_l_s_o
        !            25: 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.