summaryrefslogtreecommitdiffstats
path: root/arch/x86_64/hal/smp.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86_64/hal/smp.c')
-rw-r--r--arch/x86_64/hal/smp.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/x86_64/hal/smp.c b/arch/x86_64/hal/smp.c
index 7d94340..931a89f 100644
--- a/arch/x86_64/hal/smp.c
+++ b/arch/x86_64/hal/smp.c
@@ -45,15 +45,14 @@ smp_init_bsp(void)
processor_t *bsp = &s_processors[0];
{
- jove_owned_obj_t *processor_objdir_obj = objdir_getlocal(_rootdir_obj, INIT_ROOTDIR_PROCESSORS_I);
- obj_settype(processor_objdir_obj, JOVE_OBJ_OBJDIR);
- obj_setvalue(processor_objdir_obj, (uintptr_t)&s_processor_objdir);
+ jove_owned_obj_t *processor_objdir = objdir_getlocal(_rootdir_obj, INIT_ROOTDIR_PROCESSORS_I);
+ obj_settype(processor_objdir, JOVE_OBJ_OBJDIR);
+ obj_setvalue(processor_objdir, (uintptr_t)&s_processor_objdir);
+ jove_obj_t *processor_objdir_obj = obj_release(processor_objdir);
jove_owned_obj_t *bsp_obj = objdir_getlocal(processor_objdir_obj, 0);
init_processor(bsp, bsp_obj);
-
obj_release(bsp_obj);
- obj_release(processor_objdir_obj);
}
idt_init();