Lines Matching full:macro
29 * A **C prototype** prefixed with :c:macro:`__syscall` for the API. It
59 The :c:macro:`__syscall` attribute is very special. To the C compiler, it
74 * :c:macro:`__syscall` must be the first thing in the prototype.
118 the definition of macros :c:macro:`__ZEPHYR_SUPERVISOR__` or
119 :c:macro:`__ZEPHYR_USER__`, typically these will be added to the compiler
129 * If :c:macro:`__ZEPHYR_SUPERVISOR__` is defined, then it is assumed that
135 * If :c:macro:`__ZEPHYR_USER__` is defined, then it is assumed that all the
141 Declaring an API with :c:macro:`__syscall` causes some code to be generated in
282 * :c:macro:`K_SYSCALL_OBJ()` Checks a memory address to assert that it is
286 * :c:macro:`K_SYSCALL_OBJ_INIT()` is the same as
287 :c:macro:`K_SYSCALL_OBJ()`, except that the provided object may be
290 * :c:macro:`K_SYSCALL_OBJ_NEVER_INIT()` is the same as
291 :c:macro:`K_SYSCALL_OBJ()`, except that the provided object must be
295 * :c:macro:`K_SYSCALL_MEMORY_READ()` validates a memory buffer of a particular
298 * :c:macro:`K_SYSCALL_MEMORY_WRITE()` is the same as
299 :c:macro:`K_SYSCALL_MEMORY_READ()` but the calling thread must additionally
302 * :c:macro:`K_SYSCALL_MEMORY_ARRAY_READ()` validates an array whose total size
304 element size. This macro correctly accounts for multiplication overflow
308 * :c:macro:`K_SYSCALL_MEMORY_ARRAY_WRITE()` is the same as
309 :c:macro:`K_SYSCALL_MEMORY_ARRAY_READ()` but the calling thread must
312 * :c:macro:`K_SYSCALL_VERIFY_MSG()` does a runtime check of some boolean
314 A variant :c:macro:`K_SYSCALL_VERIFY` exists which does not take
318 * :c:macro:`K_SYSCALL_DRIVER_OP()` checks at runtime if a driver
320 macro can be used by itself, it's mostly a building block for macros
323 :c:macro:`K_SYSCALL_DRIVER_GPIO()` macro.
325 * :c:macro:`K_SYSCALL_SPECIFIC_DRIVER()` is a runtime check to verify that
333 If any check fails, the macros will return a nonzero value. The macro
334 :c:macro:`K_OOPS()` can be used to induce a kernel oops which will kill the
563 simply invoke :c:macro:`K_OOPS()` which kills the calling thread. The current
568 invokes :c:macro:`K_OOPS()`.
572 should trigger a :c:macro:`K_OOPS`. This happens when the caller doesn't have
581 invoke :c:macro:`K_OOPS()`.
599 must enforce that these are NULL and should invoke :c:macro:`K_OOPS()` if
613 * :c:func:`k_thread_create()` invokes :c:macro:`K_OOPS()` for parameter
617 * :c:func:`k_thread_abort()` invokes :c:macro:`K_OOPS()` if an essential
620 * Various system calls related to logging invoke :c:macro:`K_OOPS()`
637 * :c:macro:`K_SYSCALL_OBJ()`
638 * :c:macro:`K_SYSCALL_OBJ_INIT()`
639 * :c:macro:`K_SYSCALL_OBJ_NEVER_INIT()`
640 * :c:macro:`K_OOPS()`
641 * :c:macro:`K_SYSCALL_MEMORY_READ()`
642 * :c:macro:`K_SYSCALL_MEMORY_WRITE()`
643 * :c:macro:`K_SYSCALL_MEMORY_ARRAY_READ()`
644 * :c:macro:`K_SYSCALL_MEMORY_ARRAY_WRITE()`
645 * :c:macro:`K_SYSCALL_VERIFY_MSG()`
646 * :c:macro:`K_SYSCALL_VERIFY`