summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/x86_64/x86_64-context-initialize.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/score/cpu/x86_64/x86_64-context-initialize.c')
-rw-r--r--cpukit/score/cpu/x86_64/x86_64-context-initialize.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/cpukit/score/cpu/x86_64/x86_64-context-initialize.c b/cpukit/score/cpu/x86_64/x86_64-context-initialize.c
index 2324d16990..35e7d7cb60 100644
--- a/cpukit/score/cpu/x86_64/x86_64-context-initialize.c
+++ b/cpukit/score/cpu/x86_64/x86_64-context-initialize.c
@@ -76,11 +76,14 @@ void _CPU_Context_Initialize(
(void) is_fp;
// XXX: Should be used in the future
- (void) new_level;
(void) tls_area;
- // XXX: Leaving interrupts off regardless of `new_level` for now
- the_context->rflags = CPU_EFLAGS_INTERRUPTS_OFF;
+ if ( new_level ) {
+ the_context->rflags = CPU_EFLAGS_INTERRUPTS_OFF;
+ }
+ else {
+ the_context->rflags = CPU_EFLAGS_INTERRUPTS_ON;
+ }
_stack = ((uintptr_t) stack_area_begin) + stack_area_size;
_stack &= ~(CPU_STACK_ALIGNMENT - 1);