diff options
Diffstat (limited to 'arch/x86_64/device')
-rw-r--r-- | arch/x86_64/device/processor.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86_64/device/processor.c b/arch/x86_64/device/processor.c index ff920c8..1b3daa2 100644 --- a/arch/x86_64/device/processor.c +++ b/arch/x86_64/device/processor.c @@ -44,7 +44,7 @@ typedef union msr_star uint32_t eip; uint16_t kcs; uint16_t ucs; - }; + }__attribute__((packed)); uint32_t v[2]; } msr_star_t; @@ -65,7 +65,7 @@ s_enable_sce(void) msr_star_t star; star.kcs = GDT_OFFSET_KERNEL_CODE; - star.ucs = GDT_OFFSET_USER_CODE; + star.ucs = GDT_OFFSET_USER_NULL; wrmsr(MSR_STAR, star.v[0], star.v[1]); extern void _syscall_entry(void); |