summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2026-01-24 11:09:29 +0100
committerAmlal El Mahrouss <amlal@nekernel.org>2026-01-24 11:14:05 +0100
commit80e5ee82e9a73c483b1556c4abdd391b3f285762 (patch)
treeccb6bea3de3e5d48d63df6d2c8b5ab5dbaa99604 /src
parent187cf4d1af81ba45af85dfe4443574c6e0e0f98a (diff)
chore: update kernel codebase.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src')
-rw-r--r--src/kernel/KernelKit/PE32CodeMgr.h2
-rw-r--r--src/kernel/KernelKit/PEFCodeMgr.h1
-rw-r--r--src/kernel/KernelKit/ProcessScheduler.h4
-rw-r--r--src/kernel/KernelKit/Semaphore.h2
-rw-r--r--src/kernel/KernelKit/ThreadLocalStorage.h6
-rw-r--r--src/kernel/KernelKit/ThreadLocalStorage.inl4
-rw-r--r--src/kernel/KernelKit/Timer.h2
-rw-r--r--src/kernel/KernelKit/UserMgr.h6
-rw-r--r--src/kernel/KernelKit/UserProcessScheduler.h2
-rw-r--r--src/kernel/KernelKit/UserProcessScheduler.inl2
-rw-r--r--src/kernel/KernelKit/XCOFF.h4
-rw-r--r--src/kernel/KernelKit/ZXD.h2
-rw-r--r--src/kernel/NeKit/Atom.h4
-rw-r--r--src/kernel/NeKit/Config.h1
-rw-r--r--src/kernel/src/PE32CodeMgr.cc1
-rw-r--r--src/kernel/src/ThreadLocalStorage.cc2
16 files changed, 35 insertions, 10 deletions
diff --git a/src/kernel/KernelKit/PE32CodeMgr.h b/src/kernel/KernelKit/PE32CodeMgr.h
index 9b47a77f..ea2f7736 100644
--- a/src/kernel/KernelKit/PE32CodeMgr.h
+++ b/src/kernel/KernelKit/PE32CodeMgr.h
@@ -23,8 +23,6 @@
#define kPeApplicationMime "application/vnd-portable-executable"
-#define kPeImageStart "__ImageStart"
-
namespace Kernel {
///
/// \name PE32Loader
diff --git a/src/kernel/KernelKit/PEFCodeMgr.h b/src/kernel/KernelKit/PEFCodeMgr.h
index 9616e7b7..a3ce74e9 100644
--- a/src/kernel/KernelKit/PEFCodeMgr.h
+++ b/src/kernel/KernelKit/PEFCodeMgr.h
@@ -21,6 +21,7 @@
#define kPefApplicationMime "application/vnd-nekernel-executable"
namespace Kernel {
+
///
/// \name PEFLoader
/// \brief PEF loader class.
diff --git a/src/kernel/KernelKit/ProcessScheduler.h b/src/kernel/KernelKit/ProcessScheduler.h
index 1f9e5821..41ecdf29 100644
--- a/src/kernel/KernelKit/ProcessScheduler.h
+++ b/src/kernel/KernelKit/ProcessScheduler.h
@@ -9,12 +9,16 @@
#include <KernelKit/UserProcessScheduler.h>
#ifdef __NEOSKRNL__
+
namespace Kernel {
+
inline UserProcessTeam kLowUserTeam;
inline UserProcessTeam kHighUserTeam;
inline UserProcessTeam kMidUserTeam;
inline UserProcessTeam kRTUserTeam;
+
} // namespace Kernel
+
#endif
#endif \ No newline at end of file
diff --git a/src/kernel/KernelKit/Semaphore.h b/src/kernel/KernelKit/Semaphore.h
index 6fafc88b..0a74a771 100644
--- a/src/kernel/KernelKit/Semaphore.h
+++ b/src/kernel/KernelKit/Semaphore.h
@@ -22,6 +22,7 @@
#define kSemaphoreDecrementOwner(sem) (sem[kSemaphoreOwnerIndex]--)
namespace Kernel {
+
/// @brief Semaphore structure used for synchronization.
using SemaphoreArr = UInt64[kSemaphoreCount];
@@ -106,6 +107,7 @@ inline bool rtl_sem_wait(SemaphoreArr& sem, const UInt64 owner, const UInt64 tim
return false; // Failed to acquire semaphore
}
+
} // namespace Kernel
#endif // !KERNELKIT_TLS_H \ No newline at end of file
diff --git a/src/kernel/KernelKit/ThreadLocalStorage.h b/src/kernel/KernelKit/ThreadLocalStorage.h
index f2d891ab..42310d87 100644
--- a/src/kernel/KernelKit/ThreadLocalStorage.h
+++ b/src/kernel/KernelKit/ThreadLocalStorage.h
@@ -20,6 +20,8 @@
#define kCookieMagLen (3U)
+namespace Kernel {
+
struct THREAD_INFORMATION_BLOCK;
/// @brief Thread Information Block.
@@ -59,8 +61,10 @@ EXTERN_C Kernel::Void rt_install_tib(THREAD_INFORMATION_BLOCK* TIB, THREAD_INFOR
/// @brief TLS check (syscall)
EXTERN_C Kernel::Bool tls_check_syscall_impl(Kernel::VoidPtr TIB);
+} // namespace Kernel
+
#include "ThreadLocalStorage.inl"
-// last rev 7/7/24
+// last rev 1/24/26
#endif /* ifndef KERNELKIT_TLS_H */
diff --git a/src/kernel/KernelKit/ThreadLocalStorage.inl b/src/kernel/KernelKit/ThreadLocalStorage.inl
index 2da27ecd..df9fb395 100644
--- a/src/kernel/KernelKit/ThreadLocalStorage.inl
+++ b/src/kernel/KernelKit/ThreadLocalStorage.inl
@@ -9,6 +9,8 @@
#include <KernelKit/ProcessScheduler.h>
#endif
+namespace Kernel {
+
template <class T>
inline T* tls_new_ptr(void) {
using namespace Kernel;
@@ -83,3 +85,5 @@ inline Kernel::Bool tls_delete_class(T* obj) {
obj->~T();
return tls_delete_ptr(obj);
}
+
+} // namespace Kernel \ No newline at end of file
diff --git a/src/kernel/KernelKit/Timer.h b/src/kernel/KernelKit/Timer.h
index 02fe5665..77437f01 100644
--- a/src/kernel/KernelKit/Timer.h
+++ b/src/kernel/KernelKit/Timer.h
@@ -9,6 +9,7 @@
#include <KernelKit/KPC.h>
namespace Kernel {
+
class SoftwareTimer;
class ITimer;
@@ -68,6 +69,7 @@ inline constexpr UInt64 rtl_milliseconds(UInt64 time) {
if (time < 1) return 0;
return time;
}
+
} // namespace Kernel
#endif // !KERNELKIT_TIMER_H
diff --git a/src/kernel/KernelKit/UserMgr.h b/src/kernel/KernelKit/UserMgr.h
index e622c376..e568dd45 100644
--- a/src/kernel/KernelKit/UserMgr.h
+++ b/src/kernel/KernelKit/UserMgr.h
@@ -30,6 +30,7 @@
#define kMaxUserTokenLen (256U)
namespace Kernel {
+
class User;
enum struct UserRingKind : Int32 {
@@ -90,10 +91,11 @@ class User final {
using UserPtr = User*;
/// \brief Current running user.
-inline User* kCurrentUser = nullptr;
+inline UserPtr kCurrentUser = nullptr;
/// \brief Super user.
-inline User* kRootUser = nullptr;
+inline UserPtr kRootUser = nullptr;
+
} // namespace Kernel
#endif /* ifndef KERNELKIT_USERMGR_H */
diff --git a/src/kernel/KernelKit/UserProcessScheduler.h b/src/kernel/KernelKit/UserProcessScheduler.h
index 2c91427f..79513b83 100644
--- a/src/kernel/KernelKit/UserProcessScheduler.h
+++ b/src/kernel/KernelKit/UserProcessScheduler.h
@@ -20,6 +20,7 @@
////////////////////////////////////////////////////
namespace Kernel {
+
//! @brief Forward declarations.
class IDylibObject;
@@ -268,6 +269,7 @@ class UserProcessHelper final {
STATIC ErrorOr<ProcessID> TheCurrentPID();
STATIC SizeT StartScheduling();
};
+
} // namespace Kernel
#include <KernelKit/ThreadLocalStorage.h>
diff --git a/src/kernel/KernelKit/UserProcessScheduler.inl b/src/kernel/KernelKit/UserProcessScheduler.inl
index 0f595d8e..b74ce762 100644
--- a/src/kernel/KernelKit/UserProcessScheduler.inl
+++ b/src/kernel/KernelKit/UserProcessScheduler.inl
@@ -11,6 +11,7 @@
#endif // KERNELKIT_USERPROCESSSCHEDULER_H
namespace Kernel {
+
/***********************************************************************************/
/** @brief Free pointer/file from usage. */
/***********************************************************************************/
@@ -56,4 +57,5 @@ BOOL UserProcess::Delete(ErrorOr<T*> ptr) {
return No;
}
+
} // namespace Kernel
diff --git a/src/kernel/KernelKit/XCOFF.h b/src/kernel/KernelKit/XCOFF.h
index 61ceb4c0..7ea20d13 100644
--- a/src/kernel/KernelKit/XCOFF.h
+++ b/src/kernel/KernelKit/XCOFF.h
@@ -15,6 +15,8 @@
#define kXCOFFLnno (0x0004)
#define kXCOFFLSyms (0x0008)
+namespace Kernel {
+
struct XCOFF_FILE_HEADER;
struct XCOFF_FORK_HEADER;
@@ -39,4 +41,6 @@ typedef struct XCOFF_FORK_HEADER {
Kernel::Char fCodeSignFork[kXCOFF64ForkNameLen];
} XCOFF_FORK_HEADER;
+} // namespace Kernel
+
#endif // ifndef KERNELKIT_XCOFF_H
diff --git a/src/kernel/KernelKit/ZXD.h b/src/kernel/KernelKit/ZXD.h
index b40ecdb5..e56299c9 100644
--- a/src/kernel/KernelKit/ZXD.h
+++ b/src/kernel/KernelKit/ZXD.h
@@ -11,7 +11,7 @@
#define kZXDVersion (0x0001)
namespace Kernel {
-
+
struct ZxdExec;
struct ZxdStub;
diff --git a/src/kernel/NeKit/Atom.h b/src/kernel/NeKit/Atom.h
index fa90dfa9..30f8eded 100644
--- a/src/kernel/NeKit/Atom.h
+++ b/src/kernel/NeKit/Atom.h
@@ -20,8 +20,8 @@ class Atom final {
Atom(const Atom&) = delete;
public:
- using Type = TypeAtomic;
- using Ref = TypeAtomic&;
+ using Type = TypeAtomic;
+ using Ref = TypeAtomic&;
using ConstRef = const TypeAtomic&;
const TypeAtomic& operator[](const SizeT& bit) { return (fArrayOfAtoms & (1 << bit)); }
diff --git a/src/kernel/NeKit/Config.h b/src/kernel/NeKit/Config.h
index e18cae54..a9ba8b8a 100644
--- a/src/kernel/NeKit/Config.h
+++ b/src/kernel/NeKit/Config.h
@@ -209,7 +209,6 @@ struct TrueResult final {
static constexpr bool kValue = true;
};
-
template <class Type>
struct PropertyResult final {
using ResultType = Type;
diff --git a/src/kernel/src/PE32CodeMgr.cc b/src/kernel/src/PE32CodeMgr.cc
index 8fef40cb..940abd11 100644
--- a/src/kernel/src/PE32CodeMgr.cc
+++ b/src/kernel/src/PE32CodeMgr.cc
@@ -15,6 +15,7 @@
#define kPeStackSizeSymbol "__NESizeOfReserveStack"
#define kPeHeapSizeSymbol "__NESizeOfReserveHeap"
#define kPeNameSymbol "__NEProgramName"
+#define kPeImageStart "__ImageStart"
namespace Kernel {
namespace Detail {
diff --git a/src/kernel/src/ThreadLocalStorage.cc b/src/kernel/src/ThreadLocalStorage.cc
index 2dfc9c5d..4ed20ce5 100644
--- a/src/kernel/src/ThreadLocalStorage.cc
+++ b/src/kernel/src/ThreadLocalStorage.cc
@@ -44,5 +44,5 @@ EXTERN_C Bool tls_check_syscall_impl(Kernel::VoidPtr tib_ptr) {
}
THREAD_INFORMATION_BLOCK* tib = static_cast<THREAD_INFORMATION_BLOCK*>(tib_ptr);
- return tls_check_tib(tib);
+ return Kernel::tls_check_tib(tib);
}