aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatteo Gmür <matteo.gmuer1@ost.ch>2025-03-16 15:20:27 +0000
committerMatteo Gmür <matteo.gmuer1@ost.ch>2025-03-16 15:20:27 +0000
commit1658665ff3343382bc2af14ea87642aec544a606 (patch)
tree022cfca7d0c049a1b953d66e6ef8b18c0a741bbb
parent5d1fbaba03f411b93281ef6934166d897cd0713e (diff)
downloadteachos-1658665ff3343382bc2af14ea87642aec544a606.tar.xz
teachos-1658665ff3343382bc2af14ea87642aec544a606.zip
Adjust task state segment struct
-rw-r--r--arch/x86_64/include/arch/context_switching/descriptor_table/task_state_segment.hpp35
1 files changed, 14 insertions, 21 deletions
diff --git a/arch/x86_64/include/arch/context_switching/descriptor_table/task_state_segment.hpp b/arch/x86_64/include/arch/context_switching/descriptor_table/task_state_segment.hpp
index af7ae7c..c3b0233 100644
--- a/arch/x86_64/include/arch/context_switching/descriptor_table/task_state_segment.hpp
+++ b/arch/x86_64/include/arch/context_switching/descriptor_table/task_state_segment.hpp
@@ -11,28 +11,21 @@ namespace teachos::arch::context_switching::descriptor_table
struct [[gnu::packed]] task_state_segment
{
private:
- uint16_t io_map_base_address = {};
-
- uint16_t reserved_1 = {};
- uint32_t reserved_2 = {};
- uint32_t reserved_3 = {};
-
- uint64_t ist7 = {};
- uint64_t ist6 = {};
- uint64_t ist5 = {};
- uint64_t ist4 = {};
- uint64_t ist3 = {};
- uint64_t ist2 = {};
- uint64_t ist1 = {};
-
- uint32_t reserved_4 = {};
- uint32_t reserved_5 = {};
-
- uint64_t rsp2 = {};
- uint64_t rsp1 = {};
+ uint32_t : 32;
uint64_t rsp0 = {};
-
- uint32_t reserved_6 = {};
+ uint64_t rsp1 = {};
+ uint64_t rsp2 = {};
+ uint64_t : 64;
+ uint64_t ist1 = {};
+ uint64_t ist2 = {};
+ uint64_t ist3 = {};
+ uint64_t ist4 = {};
+ uint64_t ist5 = {};
+ uint64_t ist6 = {};
+ uint64_t ist7 = {};
+ uint64_t : 64;
+ uint32_t : 32;
+ uint16_t io_map_base_address = {};
};
} // namespace teachos::arch::context_switching::descriptor_table