From 83d870e58457a1d335a1d9b9966a6a1887cc297b Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Mon, 24 Nov 2025 03:02:43 +0100 Subject: feat! breaking changes on kernel sources. Signed-off-by: Amlal El Mahrouss --- dev/kernel/KernelKit/ThreadLocalStorage.h | 68 ------------------------------- 1 file changed, 68 deletions(-) delete mode 100644 dev/kernel/KernelKit/ThreadLocalStorage.h (limited to 'dev/kernel/KernelKit/ThreadLocalStorage.h') diff --git a/dev/kernel/KernelKit/ThreadLocalStorage.h b/dev/kernel/KernelKit/ThreadLocalStorage.h deleted file mode 100644 index 205d6df9..00000000 --- a/dev/kernel/KernelKit/ThreadLocalStorage.h +++ /dev/null @@ -1,68 +0,0 @@ -/* ======================================== - - Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license. - -======================================== */ - -#ifndef KERNELKIT_TLS_H -#define KERNELKIT_TLS_H - -#include -#include - -///! @brief Thread Local Storage for NeKernel. - -#define kCookieMag0Idx (0U) -#define kCookieMag1Idx (1U) -#define kCookieMag2Idx (2U) - -#define kCookieMag0 'N' -#define kCookieMag1 'K' -#define kCookieMag2 'O' - -#define kCookieMagLen (3U) - -struct THREAD_INFORMATION_BLOCK; - -/// @brief Thread Information Block. -/// Located in GS on AMD64, other architectures have their own stuff. (64x0, 32x0, ARM64) -struct PACKED THREAD_INFORMATION_BLOCK final { - Kernel::Char Cookie[kCookieMagLen]{0}; //! Thread Magic Number. - Kernel::VoidPtr UserData{nullptr}; //! Thread Information Record (User defined canary structure) -}; - -///! @brief Cookie Sanity check. -Kernel::Boolean tls_check_tib(THREAD_INFORMATION_BLOCK* the_tib); - -///! @brief new ptr syscall. -template -T* tls_new_ptr(void) noexcept; - -///! @brief delete ptr syscall. -template -Kernel::Boolean tls_delete_ptr(T* ptr) noexcept; - -//! @brief Delete process pointer. -//! @param obj The pointer to delete. -template -inline Kernel::Bool tls_delete_ptr(Kernel::ErrorOr obj) noexcept; - -//! @brief Delete process pointer. -//! @param obj The pointer to delete. -template -inline Kernel::Bool tls_delete_ptr(Kernel::ErrorOr obj) noexcept; - -template -T* tls_new_class(Args&&... args); - -/// @brief TLS install TIB and PIB. (syscall) -EXTERN_C Kernel::Void rt_install_tib(THREAD_INFORMATION_BLOCK* TIB, THREAD_INFORMATION_BLOCK* PIB); - -/// @brief TLS check (syscall) -EXTERN_C Kernel::Bool tls_check_syscall_impl(Kernel::VoidPtr TIB) noexcept; - -#include - -// last rev 7/7/24 - -#endif /* ifndef KERNELKIT_TLS_H */ -- cgit v1.2.3