![]() |
L4Re Operating System Framework
Interface and Usage Documentation
|
Extensions of the Fiasco L4 implementation. More...
Topics | |
| Kernel Debugger | |
| Kernel debugger related functionality. | |
| Kernel Information Dump | |
| Kernel information dumping related functionality. | |
| Kernel Tracing | |
| Kernel tracing related functionality. | |
Files | |
| file | __ktrace-impl.h |
| L4 kernel event tracing. | |
| file | ktrace.h |
| L4 kernel event tracing. | |
| file | obj_info.h |
| Debugger related functions. | |
| file | segment.h |
| l4f-specific fs/gs manipulation (AMD64). | |
| file | segment.h |
| Segment handling (AMD64). | |
| file | segment.h |
| l4f-specific segment manipulation (x86). | |
| file | segment.h |
| Segment handling (x86). | |
Functions | |
| long | fiasco_ldt_set (l4_cap_idx_t task, void *ldt, unsigned int num_desc, unsigned int entry_number_start, l4_utcb_t *utcb) |
| Set LDT segments descriptors. | |
| long | fiasco_gdt_set (l4_cap_idx_t thread, void *desc, unsigned int size, unsigned int entry_number_start, l4_utcb_t *utcb) |
| Set GDT segment descriptors. | |
| unsigned | fiasco_gdt_get_entry_offset (l4_cap_idx_t thread, l4_utcb_t *utcb) |
| Return the offset of the entry in the GDT. | |
Extensions of the Fiasco L4 implementation.
|
inline |
Return the offset of the entry in the GDT.
| thread | Thread to get info from. |
| utcb | UTCB to be used for this operation, shall be the UTCB of the calling thread. See l4_utcb. |
Definition at line 166 of file segment.h.
References l4_ipc_call(), L4_IPC_NEVER, l4_msgtag(), L4_PROTO_THREAD, and L4_THREAD_X86_GDT_OP.
|
inline |
Set GDT segment descriptors.
Fiasco supports 4 consecutive entries, starting at the value returned by fiasco_gdt_get_entry_offset().
| thread | Thread to set the GDT entry for. |
| desc | Pointer to GDT descriptors. |
| size | Size of the descriptors in bytes (multiple of 8). |
| entry_number_start | Entry number to start (valid values: 0-3). |
| utcb | UTCB to be used for this operation, shall be the UTCB of the calling thread. See l4_utcb. |
| <0 | At least one provided GDT descriptor is considered unsafe by the kernel, and not all selected GDT descriptors have been updated. |
| L4_EOK | Success. |
Definition at line 41 of file segment.h.
References l4_ipc_call(), L4_IPC_NEVER, l4_msgtag(), L4_PROTO_THREAD, and L4_THREAD_X86_GDT_OP.
|
inline |
Set LDT segments descriptors.
| task | Task to set the segment for. |
| ldt | Pointer to LDT hardware descriptors. |
| num_desc | Number of descriptors. |
| entry_number_start | Entry number to start. |
| utcb | UTCB to be used for this operation, shall be the UTCB of the calling thread. See l4_utcb. |
| -L4_ENOSYS | The kernel configuration doesn't support this feature. |
| -L4_EINVAL | Invalid descriptor or invalid entry number. |
| L4_EOK | Success. |
Definition at line 153 of file segment.h.
References L4_EINVAL, l4_ipc_call(), L4_IPC_NEVER, l4_msgtag(), L4_PROTO_TASK, L4_TASK_LDT_SET_X86_OP, L4_TASK_LDT_X86_ENTRY_SIZE, and L4_TASK_LDT_X86_MAX_ENTRIES.