summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'dev/kernel')
-rw-r--r--dev/kernel/DmaKit/DmaPool.h2
-rw-r--r--dev/kernel/FirmwareKit/EFI/EFI.h2
-rw-r--r--dev/kernel/FirmwareKit/GPT.h36
-rw-r--r--dev/kernel/HALKit/AMD64/HalApplicationProcessor.cc4
-rw-r--r--dev/kernel/HALKit/AMD64/Storage/AHCI+Generic.cc5
-rw-r--r--dev/kernel/HALKit/AMD64/Storage/PIO+Generic.cc6
-rw-r--r--dev/kernel/KernelKit/DeviceMgr.h2
-rw-r--r--dev/kernel/KernelKit/UserMgr.h8
-rw-r--r--dev/kernel/KernelKit/UserProcessScheduler.h17
-rw-r--r--dev/kernel/NeKit/ErrorOr.h8
-rw-r--r--dev/kernel/NeKit/Ref.h4
-rw-r--r--dev/kernel/src/Storage/AHCIDeviceInterface.cc4
-rw-r--r--dev/kernel/src/Storage/ATADeviceInterface.cc3
-rw-r--r--dev/kernel/src/Storage/NVMEDeviceInterface.cc7
-rw-r--r--dev/kernel/src/UserProcessScheduler.cc18
-rw-r--r--dev/kernel/src/UserProcessTeam.cc2
16 files changed, 66 insertions, 62 deletions
diff --git a/dev/kernel/DmaKit/DmaPool.h b/dev/kernel/DmaKit/DmaPool.h
index ec98745d..9decb3f1 100644
--- a/dev/kernel/DmaKit/DmaPool.h
+++ b/dev/kernel/DmaKit/DmaPool.h
@@ -44,7 +44,7 @@ inline VoidPtr rtl_dma_alloc(SizeT size, SizeT align) {
kDmaPoolPtr = (UInt8*) (addr + size);
- HAL::mm_memory_fence((VoidPtr)addr);
+ HAL::mm_memory_fence((VoidPtr) addr);
return (VoidPtr) addr;
}
diff --git a/dev/kernel/FirmwareKit/EFI/EFI.h b/dev/kernel/FirmwareKit/EFI/EFI.h
index ed22f1e9..97e3ad01 100644
--- a/dev/kernel/FirmwareKit/EFI/EFI.h
+++ b/dev/kernel/FirmwareKit/EFI/EFI.h
@@ -664,7 +664,7 @@ typedef struct EfiSystemTable {
/// The configuration table (contains the RSD PTR entry.)
struct {
EFI_GUID VendorGUID;
- VoidPtr VendorTable;
+ VoidPtr VendorTable;
} * ConfigurationTable;
} EfiSystemTable;
diff --git a/dev/kernel/FirmwareKit/GPT.h b/dev/kernel/FirmwareKit/GPT.h
index df0ed286..f361c4a2 100644
--- a/dev/kernel/FirmwareKit/GPT.h
+++ b/dev/kernel/FirmwareKit/GPT.h
@@ -20,29 +20,29 @@ struct GPT_PARTITION_TABLE;
struct GPT_PARTITION_ENTRY;
struct PACKED GPT_PARTITION_TABLE final {
- Char Signature[kMagicLenGPT];
- UInt32 Revision;
- UInt32 HeaderSize;
- UInt32 CRC32;
- UInt32 Reserved1;
- UInt64 LBAHeader;
- UInt64 LBAAltHeader;
- UInt64 FirstGPTEntry;
- UInt64 LastGPTEntry;
+ Char Signature[kMagicLenGPT];
+ UInt32 Revision;
+ UInt32 HeaderSize;
+ UInt32 CRC32;
+ UInt32 Reserved1;
+ UInt64 LBAHeader;
+ UInt64 LBAAltHeader;
+ UInt64 FirstGPTEntry;
+ UInt64 LastGPTEntry;
EFI_GUID Guid;
- UInt64 StartingLBA;
- UInt32 NumPartitionEntries;
- UInt32 SizeOfEntries;
- UInt32 CRC32PartEntry;
- UInt8 Reserved2[kSectorAlignGPT_PartTbl];
+ UInt64 StartingLBA;
+ UInt32 NumPartitionEntries;
+ UInt32 SizeOfEntries;
+ UInt32 CRC32PartEntry;
+ UInt8 Reserved2[kSectorAlignGPT_PartTbl];
};
struct PACKED GPT_PARTITION_ENTRY {
EFI_GUID PartitionTypeGUID;
EFI_GUID UniquePartitionGUID;
- UInt64 StartLBA;
- UInt64 EndLBA;
- UInt64 Attributes;
- UInt8 Name[kSectorAlignGPT_PartEntry];
+ UInt64 StartLBA;
+ UInt64 EndLBA;
+ UInt64 Attributes;
+ UInt8 Name[kSectorAlignGPT_PartEntry];
};
} // namespace Kernel
diff --git a/dev/kernel/HALKit/AMD64/HalApplicationProcessor.cc b/dev/kernel/HALKit/AMD64/HalApplicationProcessor.cc
index 3e10d577..5bdfd863 100644
--- a/dev/kernel/HALKit/AMD64/HalApplicationProcessor.cc
+++ b/dev/kernel/HALKit/AMD64/HalApplicationProcessor.cc
@@ -201,9 +201,9 @@ Void mp_init_cores(VoidPtr vendor_ptr) noexcept {
volatile LAPIC* entry_struct = (volatile LAPIC*) entry_ptr;
if (entry_struct->Flags & 0x1) {
- kAPICLocales[kSMPCount] = entry_struct->ProcessorID;
+ kAPICLocales[kSMPCount] = entry_struct->ProcessorID;
kHWThread[kSMPCount].mThreadID = kAPICLocales[kSMPCount];
-
+
++kSMPCount;
kout << "Kind: LAPIC: ON\r";
diff --git a/dev/kernel/HALKit/AMD64/Storage/AHCI+Generic.cc b/dev/kernel/HALKit/AMD64/Storage/AHCI+Generic.cc
index a9bdc89b..cd41480a 100644
--- a/dev/kernel/HALKit/AMD64/Storage/AHCI+Generic.cc
+++ b/dev/kernel/HALKit/AMD64/Storage/AHCI+Generic.cc
@@ -546,7 +546,8 @@ namespace Detail {
/// @brief Read AHCI device.
/// @param self device
/// @param mnt mounted disk.
- STATIC Void sk_io_read_ahci(DeviceInterface<MountpointInterface*>* self, MountpointInterface* mnt) {
+ STATIC Void sk_io_read_ahci(DeviceInterface<MountpointInterface*>* self,
+ MountpointInterface* mnt) {
AHCIDeviceInterface* dev = (AHCIDeviceInterface*) self;
err_global_get() = kErrorDisk;
@@ -568,7 +569,7 @@ namespace Detail {
/// @param self device
/// @param mnt mounted disk.
STATIC Void sk_io_write_ahci(DeviceInterface<MountpointInterface*>* self,
- MountpointInterface* mnt) {
+ MountpointInterface* mnt) {
AHCIDeviceInterface* dev = (AHCIDeviceInterface*) self;
err_global_get() = kErrorDisk;
diff --git a/dev/kernel/HALKit/AMD64/Storage/PIO+Generic.cc b/dev/kernel/HALKit/AMD64/Storage/PIO+Generic.cc
index 7b121c64..6fccbdfa 100644
--- a/dev/kernel/HALKit/AMD64/Storage/PIO+Generic.cc
+++ b/dev/kernel/HALKit/AMD64/Storage/PIO+Generic.cc
@@ -200,7 +200,8 @@ namespace Detail {
/// @brief Read PIO device.
/// @param self device
/// @param mnt mounted disk.
- STATIC Void sk_io_read_pio(DeviceInterface<MountpointInterface*>* self, MountpointInterface* mnt) {
+ STATIC Void sk_io_read_pio(DeviceInterface<MountpointInterface*>* self,
+ MountpointInterface* mnt) {
ATADeviceInterface* dev = (ATADeviceInterface*) self;
err_global_get() = kErrorDisk;
@@ -221,7 +222,8 @@ namespace Detail {
/// @brief Write PIO device.
/// @param self device
/// @param mnt mounted disk.
- STATIC Void sk_io_write_pio(DeviceInterface<MountpointInterface*>* self, MountpointInterface* mnt) {
+ STATIC Void sk_io_write_pio(DeviceInterface<MountpointInterface*>* self,
+ MountpointInterface* mnt) {
ATADeviceInterface* dev = (ATADeviceInterface*) self;
err_global_get() = kErrorDisk;
diff --git a/dev/kernel/KernelKit/DeviceMgr.h b/dev/kernel/KernelKit/DeviceMgr.h
index d82b43dc..c6467190 100644
--- a/dev/kernel/KernelKit/DeviceMgr.h
+++ b/dev/kernel/KernelKit/DeviceMgr.h
@@ -42,7 +42,7 @@ template <typename T>
class DeviceInterface {
public:
DeviceInterface() = default;
-
+
explicit DeviceInterface(void (*Out)(DeviceInterface<T>*, T), void (*In)(DeviceInterface<T>*, T))
: fOut(Out), fIn(In) {}
diff --git a/dev/kernel/KernelKit/UserMgr.h b/dev/kernel/KernelKit/UserMgr.h
index 82f8ca66..89436025 100644
--- a/dev/kernel/KernelKit/UserMgr.h
+++ b/dev/kernel/KernelKit/UserMgr.h
@@ -34,11 +34,11 @@
namespace Kernel {
class User;
-enum class UserRingKind {
+enum class UserRingKind : Int32 {
kRingInvalid = 0,
- kRingStdUser = 1,
- kRingSuperUser = 2,
- kRingGuestUser = 5,
+ kRingStdUser = 444,
+ kRingSuperUser = 666,
+ kRingGuestUser = 777,
kRingCount = 3,
};
diff --git a/dev/kernel/KernelKit/UserProcessScheduler.h b/dev/kernel/KernelKit/UserProcessScheduler.h
index 23636ffb..7c994726 100644
--- a/dev/kernel/KernelKit/UserProcessScheduler.h
+++ b/dev/kernel/KernelKit/UserProcessScheduler.h
@@ -125,7 +125,7 @@ class USER_PROCESS final {
/***********************************************************************************/
//! @brief Gets the local exit code.
/***********************************************************************************/
- const UInt32& GetExitCode() noexcept;
+ KPCError& GetExitCode() noexcept;
/***********************************************************************************/
///! @brief Get the process's name
@@ -137,21 +137,22 @@ class USER_PROCESS final {
//! @brief return local error code of process.
//! @return Int32 local error code.
/***********************************************************************************/
- Int32& GetLocalCode() noexcept;
+ KPCError& GetLocalCode() noexcept;
const User* GetOwner() noexcept;
const ProcessStatusKind& GetStatus() noexcept;
const AffinityKind& GetAffinity() noexcept;
private:
- UInt32 LastExitCode{0};
- KPCError LocalCode{0};
+ KPCError LastExitCode{0};
+ KPCError LocalCode{0};
friend UserProcessScheduler;
friend UserProcessHelper;
};
typedef Array<USER_PROCESS, kSchedProcessLimitPerTeam> USER_PROCESS_ARRAY;
+typedef Ref<USER_PROCESS> USER_PROCESS_REF;
/// \brief Processs Team (contains multiple processes inside it.)
/// Equivalent to a process batch
@@ -168,9 +169,9 @@ class UserProcessTeam final {
public:
USER_PROCESS_ARRAY mProcessList;
- Ref<USER_PROCESS> mCurrentProcess;
+ USER_PROCESS_REF mCurrentProcess;
ProcessID mTeamId{0};
- ProcessID mProcessCount{0};
+ ProcessID mProcessCur{0};
};
/***********************************************************************************/
@@ -204,8 +205,8 @@ class UserProcessScheduler final : public ISchedulable {
Bool HasMP() override;
public:
- Ref<USER_PROCESS>& TheCurrentProcess();
- SizeT Run() noexcept;
+ USER_PROCESS_REF& TheCurrentProcess();
+ SizeT Run() noexcept;
public:
STATIC UserProcessScheduler& The();
diff --git a/dev/kernel/NeKit/ErrorOr.h b/dev/kernel/NeKit/ErrorOr.h
index 5e983d09..b653e0ee 100644
--- a/dev/kernel/NeKit/ErrorOr.h
+++ b/dev/kernel/NeKit/ErrorOr.h
@@ -18,11 +18,11 @@ using ErrorT = UInt;
template <typename T>
class ErrorOr final {
public:
- explicit ErrorOr() = default;
- ~ErrorOr() = default;
+ explicit ErrorOr() = default;
+ ~ErrorOr() = default;
public:
- explicit ErrorOr(Int32 err) : mRef((T*)RTL_ALLOCA(sizeof(T))), mId(err) {}
+ explicit ErrorOr(Int32 err) : mRef((T*) RTL_ALLOCA(sizeof(T))), mId(err) {}
explicit ErrorOr(nullPtr) {}
@@ -48,7 +48,7 @@ class ErrorOr final {
private:
Ref<T> mRef;
- Int32 mId{0};
+ Int32 mId{0};
};
using ErrorOrAny = ErrorOr<voidPtr>;
diff --git a/dev/kernel/NeKit/Ref.h b/dev/kernel/NeKit/Ref.h
index 9380bab4..4d343bc5 100644
--- a/dev/kernel/NeKit/Ref.h
+++ b/dev/kernel/NeKit/Ref.h
@@ -8,17 +8,17 @@
#ifndef _NEWKIT_REF_H_
#define _NEWKIT_REF_H_
+#include <CompilerKit/CompilerKit.h>
#include <KernelKit/HeapMgr.h>
#include <NeKit/Defines.h>
#include <NeKit/KernelPanic.h>
-#include <CompilerKit/CompilerKit.h>
namespace Kernel {
template <typename T>
class Ref final {
public:
explicit Ref() = default;
- ~Ref() = default;
+ ~Ref() = default;
public:
Ref(T* cls) : fClass(*cls) {}
diff --git a/dev/kernel/src/Storage/AHCIDeviceInterface.cc b/dev/kernel/src/Storage/AHCIDeviceInterface.cc
index 382ce37b..39570665 100644
--- a/dev/kernel/src/Storage/AHCIDeviceInterface.cc
+++ b/dev/kernel/src/Storage/AHCIDeviceInterface.cc
@@ -12,9 +12,9 @@ using namespace Kernel;
/// @param Out Drive output
/// @param In Drive input
/// @param Cleanup Drive cleanup.
-AHCIDeviceInterface::AHCIDeviceInterface(void (*out)(DeviceInterface* self,
+AHCIDeviceInterface::AHCIDeviceInterface(void (*out)(DeviceInterface* self,
MountpointInterface* outpacket),
- void (*in)(DeviceInterface* self,
+ void (*in)(DeviceInterface* self,
MountpointInterface* inpacket))
: DeviceInterface(out, in) {}
diff --git a/dev/kernel/src/Storage/ATADeviceInterface.cc b/dev/kernel/src/Storage/ATADeviceInterface.cc
index 697571a3..609837af 100644
--- a/dev/kernel/src/Storage/ATADeviceInterface.cc
+++ b/dev/kernel/src/Storage/ATADeviceInterface.cc
@@ -12,7 +12,8 @@ using namespace Kernel;
/// @param Out Drive output
/// @param In Drive input
/// @param Cleanup Drive cleanup.
-ATADeviceInterface::ATADeviceInterface(void (*Out)(DeviceInterface*, MountpointInterface* outpacket),
+ATADeviceInterface::ATADeviceInterface(void (*Out)(DeviceInterface*,
+ MountpointInterface* outpacket),
void (*In)(DeviceInterface*, MountpointInterface* inpacket))
: DeviceInterface(Out, In) {}
diff --git a/dev/kernel/src/Storage/NVMEDeviceInterface.cc b/dev/kernel/src/Storage/NVMEDeviceInterface.cc
index bc138710..077595cf 100644
--- a/dev/kernel/src/Storage/NVMEDeviceInterface.cc
+++ b/dev/kernel/src/Storage/NVMEDeviceInterface.cc
@@ -7,10 +7,9 @@
#include <StorageKit/NVME.h>
namespace Kernel {
-NVMEDeviceInterface::NVMEDeviceInterface(void (*out)(DeviceInterface*,
- MountpointInterface* outpacket),
- void (*in)(DeviceInterface*, MountpointInterface* inpacket),
- void (*cleanup)(void))
+NVMEDeviceInterface::NVMEDeviceInterface(
+ void (*out)(DeviceInterface*, MountpointInterface* outpacket),
+ void (*in)(DeviceInterface*, MountpointInterface* inpacket), void (*cleanup)(void))
: DeviceInterface(out, in), fCleanup(cleanup) {}
NVMEDeviceInterface::~NVMEDeviceInterface() {
diff --git a/dev/kernel/src/UserProcessScheduler.cc b/dev/kernel/src/UserProcessScheduler.cc
index e6309589..f76d4821 100644
--- a/dev/kernel/src/UserProcessScheduler.cc
+++ b/dev/kernel/src/UserProcessScheduler.cc
@@ -67,7 +67,7 @@ USER_PROCESS::operator bool() {
/// @return Int32 the last exit code.
/***********************************************************************************/
-const UInt32& USER_PROCESS::GetExitCode() noexcept {
+KPCError& USER_PROCESS::GetExitCode() noexcept {
return this->LastExitCode;
}
@@ -75,7 +75,7 @@ const UInt32& USER_PROCESS::GetExitCode() noexcept {
/// @brief Error code variable getter.
/***********************************************************************************/
-Int32& USER_PROCESS::GetLocalCode() noexcept {
+KPCError& USER_PROCESS::GetLocalCode() noexcept {
return this->LocalCode;
}
@@ -258,13 +258,13 @@ STATIC Void sched_free_ptr_tree(PROCESS_HEAP_TREE<VoidPtr>* memory_ptr_list) {
/***********************************************************************************/
Void USER_PROCESS::Exit(const Int32& exit_code) {
- this->Status = exit_code > 0 ? ProcessStatusKind::kKilled : ProcessStatusKind::kFrozen;
+ this->Status = exit_code > 0 ? ProcessStatusKind::kKilled : ProcessStatusKind::kFrozen;
this->LastExitCode = exit_code;
- this->UTime = 0;
+ this->UTime = 0;
kLastExitCode = exit_code;
- --this->ParentTeam->mProcessCount;
+ --this->ParentTeam->mProcessCur;
auto memory_ptr_list = this->HeapTree;
@@ -314,7 +314,7 @@ Void USER_PROCESS::Exit(const Int32& exit_code) {
this->ProcessId = 0UL;
this->Status = ProcessStatusKind::kFinished;
- --this->ParentTeam->mProcessCount;
+ --this->ParentTeam->mProcessCur;
}
/***********************************************************************************/
@@ -360,13 +360,13 @@ ProcessID UserProcessScheduler::Spawn(const Char* name, VoidPtr code, VoidPtr im
return -kErrorProcessFault;
}
- ProcessID pid = this->mTeam.mProcessCount;
+ ProcessID pid = this->mTeam.mProcessCur;
if (pid > kSchedProcessLimitPerTeam) {
return -kErrorProcessFault;
}
- ++this->mTeam.mProcessCount;
+ ++this->mTeam.mProcessCur;
USER_PROCESS& process = this->mTeam.mProcessList[pid];
@@ -480,7 +480,7 @@ Bool UserProcessScheduler::HasMP() {
/***********************************************************************************/
SizeT UserProcessScheduler::Run() noexcept {
- if (mTeam.mProcessCount < 1) {
+ if (mTeam.mProcessCur < 1) {
return 0UL;
}
diff --git a/dev/kernel/src/UserProcessTeam.cc b/dev/kernel/src/UserProcessTeam.cc
index 8ef9a013..dd21ac49 100644
--- a/dev/kernel/src/UserProcessTeam.cc
+++ b/dev/kernel/src/UserProcessTeam.cc
@@ -21,7 +21,7 @@ UserProcessTeam::UserProcessTeam() {
this->mProcessList[i].ParentTeam = this;
}
- this->mProcessCount = 0UL;
+ this->mProcessCur = 0UL;
}
/***********************************************************************************/