diff options
Diffstat (limited to 'dev/ZKA/NewKit')
| -rw-r--r-- | dev/ZKA/NewKit/KernelCheck.hxx | 3 | ||||
| -rw-r--r-- | dev/ZKA/NewKit/Macros.hxx | 16 | ||||
| -rw-r--r-- | dev/ZKA/NewKit/PageAllocator.hxx | 1 | ||||
| -rw-r--r-- | dev/ZKA/NewKit/PageManager.hxx | 4 | ||||
| -rw-r--r-- | dev/ZKA/NewKit/Ref.hxx | 2 |
5 files changed, 14 insertions, 12 deletions
diff --git a/dev/ZKA/NewKit/KernelCheck.hxx b/dev/ZKA/NewKit/KernelCheck.hxx index 58a76acb..8797ff86 100644 --- a/dev/ZKA/NewKit/KernelCheck.hxx +++ b/dev/ZKA/NewKit/KernelCheck.hxx @@ -20,7 +20,7 @@ namespace Kernel Kernel::ke_runtime_check(EXPR, FILE, STRINGIFY(LINE)) #ifdef __DEBUG__ -#define MUST_PASS(EXPR) __MUST_PASS(EXPR, __FILE__, __LINE__) +#define MUST_PASS(EXPR) __MUST_PASS((EXPR), __FILE__, __LINE__) #define assert(EXPR) MUST_PASS(EXPR, RUNTIME_CHECK_EXPRESSION) #else #define MUST_PASS(EXPR) (Kernel::Void)(EXPR) @@ -43,6 +43,7 @@ enum RUNTIME_CHECK RUNTIME_CHECK_BOOTSTRAP, RUNTIME_CHECK_UNEXCPECTED, RUNTIME_CHECK_FILESYSTEM, + RUNTIME_CHECK_VIRTUAL_OUT_OF_MEM, RUNTIME_CHECK_COUNT, }; diff --git a/dev/ZKA/NewKit/Macros.hxx b/dev/ZKA/NewKit/Macros.hxx index 153b8c45..b9242e79 100644 --- a/dev/ZKA/NewKit/Macros.hxx +++ b/dev/ZKA/NewKit/Macros.hxx @@ -7,31 +7,31 @@ #pragma once #ifndef KIB -#define KIB(X) ((X) / 1024) +#define KIB(X) (Kernel::UInt64)((X) / 1024) #endif #ifndef kib_cast -#define kib_cast(X) ((X)*1024) +#define kib_cast(X) (Kernel::UInt64)((X)*1024) #endif #ifndef MIB -#define MIB(X) ((Kernel::UInt64)KIB(X) / 1024) +#define MIB(X) (Kernel::UInt64)((Kernel::UInt64)KIB(X) / 1024) #endif #ifndef mib_cast -#define mib_cast(X) ((Kernel::UInt64)kib_cast(X) * 1024) +#define mib_cast(X) (Kernel::UInt64)((Kernel::UInt64)kib_cast(X) * 1024) #endif #ifndef GIB -#define GIB(X) ((Kernel::UInt64)MIB(X) / 1024) +#define GIB(X) (Kernel::UInt64)((Kernel::UInt64)MIB(X) / 1024) #endif #ifndef gib_cast -#define gib_cast(X) ((Kernel::UInt64)mib_cast(X) * 1024) +#define gib_cast(X) (Kernel::UInt64)((Kernel::UInt64)mib_cast(X) * 1024) #endif #ifndef TIB -#define TIB(X) ((Kernel::UInt64)GIB(X) / 1024) +#define TIB(X) (Kernel::UInt64)((Kernel::UInt64)GIB(X) / 1024) #endif #ifndef tib_cast @@ -94,7 +94,7 @@ #define CANT_REACH() __builtin_unreachable() #endif -#define kBadPtr 0xFBFBFBFBFBFBFBFB +#define kInvalidAddress 0xFBFBFBFBFBFBFBFB #define kBadAddress 0x00000000000000 #define kMaxAddr 0xFFFFFFFFFFFFFFFF #define kPathLen 255 diff --git a/dev/ZKA/NewKit/PageAllocator.hxx b/dev/ZKA/NewKit/PageAllocator.hxx index b485e722..a6d84aa0 100644 --- a/dev/ZKA/NewKit/PageAllocator.hxx +++ b/dev/ZKA/NewKit/PageAllocator.hxx @@ -13,7 +13,6 @@ namespace Kernel { namespace Detail { - VoidPtr create_page_wrapper(Boolean rw, Boolean user, SizeT pageSz); void exec_disable(UIntPtr addr); bool page_disable(UIntPtr addr); } // namespace Detail diff --git a/dev/ZKA/NewKit/PageManager.hxx b/dev/ZKA/NewKit/PageManager.hxx index 249c0cc9..0de37803 100644 --- a/dev/ZKA/NewKit/PageManager.hxx +++ b/dev/ZKA/NewKit/PageManager.hxx @@ -33,6 +33,8 @@ namespace Kernel void NoExecute(const bool enable = false); const bool& NoExecute(); + operator bool() { return fVirtAddr; } + bool Reclaim(); bool Shareable(); bool Present(); @@ -68,7 +70,7 @@ namespace Kernel bool Free(Ref<PTEWrapper*>& wrapper); private: - void FlushTLB(UIntPtr VirtAddr); + void FlushTLB(); private: friend PTEWrapper; diff --git a/dev/ZKA/NewKit/Ref.hxx b/dev/ZKA/NewKit/Ref.hxx index 977c353a..7f5167c2 100644 --- a/dev/ZKA/NewKit/Ref.hxx +++ b/dev/ZKA/NewKit/Ref.hxx @@ -84,7 +84,7 @@ namespace Kernel NonNullRef(T* ref) : fRef(ref, true) { - MUST_PASS(ref != nullptr); + MUST_PASS(ref); } Ref<T>& operator->() |
