Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/main/main.c

    r9e40355e r3b3faf51  
    6262#include <console/kconsole.h>
    6363#include <console/console.h>
     64#include <log.h>
    6465#include <cpu.h>
    6566#include <align.h>
     
    7576#include <synch/waitq.h>
    7677#include <synch/futex.h>
     78#include <synch/workqueue.h>
     79#include <smp/smp_call.h>
    7780#include <arch/arch.h>
    7881#include <arch.h>
     
    113116        .physmem_end = 0
    114117};
     118
     119/** Boot arguments. */
     120char bargs[CONFIG_BOOT_ARGUMENTS_BUFLEN] = {};
    115121
    116122/** Initial user-space tasks */
     
    235241         * Memory management subsystems initialization.
    236242         */
    237         arch_pre_mm_init();
     243        ARCH_OP(pre_mm_init);
    238244        km_identity_init();
    239245        frame_init();
     
    247253        km_non_identity_init();
    248254        ddi_init();
    249         arch_post_mm_init();
     255        ARCH_OP(post_mm_init);
    250256        reserve_init();
    251         arch_pre_smp_init();
     257        ARCH_OP(pre_smp_init);
    252258        smp_init();
    253259       
     
    262268       
    263269        cpu_init();
    264        
    265270        calibrate_delay_loop();
     271        ARCH_OP(post_cpu_init);
     272
     273        smp_call_init();
     274        workq_global_init();
    266275        clock_counter_init();
    267276        timeout_init();
     
    270279        thread_init();
    271280        futex_init();
    272        
     281
     282        sysinfo_set_item_data("boot_args", NULL, bargs, str_size(bargs) + 1);
     283
    273284        if (init.cnt > 0) {
    274285                size_t i;
     
    281292        ipc_init();
    282293        event_init();
    283         klog_init();
     294        kio_init();
     295        log_init();
    284296        stats_init();
    285297       
     
    334346        the_initialize(THE);
    335347       
    336         arch_pre_mm_init();
     348        ARCH_OP(pre_mm_init);
    337349        frame_init();
    338350        page_init();
    339351        tlb_init();
    340         arch_post_mm_init();
     352        ARCH_OP(post_mm_init);
    341353       
    342354        cpu_init();
    343355        calibrate_delay_loop();
    344         arch_post_cpu_init();
     356        ARCH_OP(post_cpu_init);
    345357       
    346358        the_copy(THE, (the_t *) CPU->stack);
     
    365377void main_ap_separated_stack(void)
    366378{
     379        smp_call_init();
     380       
    367381        /*
    368382         * Configure timeouts for this cpu.
Note: See TracChangeset for help on using the changeset viewer.