|
Xenomai
3.0.5
|
The Xenomai core deals with concurrent activities from two distinct kernels running side-by-side. More...
|
Macros | |
| #define | splhigh(x) ((x) = ipipe_test_and_stall_head() & 1) |
| Hard disable interrupts on the local processor, saving previous state. More... | |
| #define | splexit(x) ipipe_restore_head(x & 1) |
| Restore the saved hard interrupt state on the local processor. More... | |
| #define | splmax() ipipe_stall_head() |
| Hard disable interrupts on the local processor. | |
| #define | splnone() ipipe_unstall_head() |
| Hard enable interrupts on the local processor. | |
| #define | spltest() ipipe_test_head() |
| Test hard interrupt state on the local processor. More... | |
The Xenomai core deals with concurrent activities from two distinct kernels running side-by-side.
When interrupts are involved, the services from this section control the hard interrupt state exclusively, for protecting against processor-local or SMP concurrency.
| #define splexit | ( | x | ) | ipipe_restore_head(x & 1) |
Restore the saved hard interrupt state on the local processor.
| [in] | x | The context variable previously updated by splhigh() |
| #define splhigh | ( | x | ) | ((x) = ipipe_test_and_stall_head() & 1) |
Hard disable interrupts on the local processor, saving previous state.
| [out] | x | An unsigned long integer context variable |
| #define spltest | ( | ) | ipipe_test_head() |
Test hard interrupt state on the local processor.
Referenced by rtdm_fd_select(), and rtdm_lock_get().