L4Re Operating System Framework
Interface and Usage Documentation
Loading...
Searching...
No Matches
segment.h File Reference

l4f specific fs/gs manipulation More...

#include <l4/sys/compiler.h>
+ Include dependency graph for segment.h:

Go to the source code of this file.

Functions

long fiasco_amd64_set_fs (l4_cap_idx_t thread, l4_umword_t base, l4_utcb_t *utcb)
 Set the base address for the FS segment.
 
long fiasco_amd64_set_segment_base (l4_cap_idx_t thread, enum L4_sys_segment segr, l4_umword_t base, l4_utcb_t *utcb)
 Set the base address for a segment.
 
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.
 

Detailed Description

l4f specific fs/gs manipulation

Definition in file segment.h.

Function Documentation

◆ fiasco_amd64_set_fs()

long fiasco_amd64_set_fs ( l4_cap_idx_t  thread,
l4_umword_t  base,
l4_utcb_t utcb 
)
inline

Set the base address for the FS segment.

Parameters
threadThread for which the FS base address shall be modified.
baseBase address.
utcbUTCB to be used for this operation, shall be the UTCB of the calling thread. See l4_utcb.
Return values
L4_EOKSuccess.
-L4_EINVALInvalid base address (base).
-L4_ENOSYSOperation not supported with current kernel configuration.
Note
Calling this function is equivalent to calling fiasco_amd64_set_segment_base(thread, L4_AMD64_SEGMENT_FS, base, utcb).

Definition at line 35 of file segment.h.

References L4_AMD64_SEGMENT_FS, l4_ipc_call(), L4_IPC_NEVER, l4_msgtag(), L4_PROTO_THREAD, L4_THREAD_AMD64_SET_SEGMENT_BASE_OP, and l4_msg_regs_t::mr.

+ Here is the call graph for this function:

◆ fiasco_amd64_set_segment_base()

long fiasco_amd64_set_segment_base ( l4_cap_idx_t  thread,
enum L4_sys_segment  segr,
l4_umword_t  base,
l4_utcb_t utcb 
)
inline

Set the base address for a segment.

Parameters
threadThread for which the base address of the selected segment shall be modified.
segrSegment to modify (one of L4_sys_segment).
baseBase address.
utcbUTCB to be used for this operation, shall be the UTCB of the calling thread. See l4_utcb.
Return values
L4_EOKSuccess.
-L4_EINVALInvalid segment (segr) or base address (base).
-L4_ENOSYSOperation not supported with current kernel configuration.

Definition at line 43 of file segment.h.

References l4_ipc_call(), L4_IPC_NEVER, l4_msgtag(), L4_PROTO_THREAD, L4_THREAD_AMD64_SET_SEGMENT_BASE_OP, and l4_msg_regs_t::mr.

+ Here is the call graph for this function: