Preprocessor macro expanding to a function header
Space | User/kernel |
Context | Async |
May block | No |
SPL | Any |
Dynamic memory | No |
#include <ARCH/AC.H>
DECL_AST(function_name, spl, structure)
{
  function code...
  RETURN or RETURN_AST or RETURN_IORQ or RETURN_IORQ_LSTAT or RETURN_IORQ_CANCELABLE
}
Declares function usable for AST handler. Macro DECL_AST
expands to machine-dependent and compiler-dependent function header. The function must return with one of RETURN*
macros (they expand to machine- and compiler-dependent return code). There may be more RETURN
statements. The function has one argument, RQ
, that points to AST being called.
AST.fn
and IORQ.fn
. The return type, arguments and attributes of the function are machine- and compiler-dependent. RQ
that has this type. The structure argument doesn't have effect on behavior of code, it is just a convenience, so that the programmer doesn't have to cast RQ
argument each time it is used.