1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 10:48:11 +00:00

Kernel+LibPthread: Add support for usermode threads on x86_64

This commit is contained in:
Gunnar Beutner 2021-07-01 11:15:00 +02:00 committed by Andreas Kling
parent 93c741018e
commit 16b9a2d2e1
3 changed files with 21 additions and 8 deletions

View file

@ -352,10 +352,16 @@ struct SC_create_thread_params {
// a call to pthread_attr_getguardsize() specifying attr shall store in the guardsize
// parameter the guard size specified by the previous pthread_attr_setguardsize() function call"
// ... ok, if you say so posix. Guess we get to lie to people about guard page size
unsigned int m_guard_page_size = 0; // Rounded up to PAGE_SIZE
unsigned int m_reported_guard_page_size = 0; // The lie we tell callers
unsigned int m_stack_size = 4 * MiB; // Default PTHREAD_STACK_MIN
void* m_stack_location; // nullptr means any, o.w. process virtual address
unsigned int guard_page_size = 0; // Rounded up to PAGE_SIZE
unsigned int reported_guard_page_size = 0; // The lie we tell callers
unsigned int stack_size = 4 * MiB; // Default PTHREAD_STACK_MIN
void* stack_location; // nullptr means any, o.w. process virtual address
# if ARCH(X86_64)
FlatPtr rdi;
FlatPtr rsi;
FlatPtr rcx;
FlatPtr rdx;
# endif
};
struct SC_realpath_params {