Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/arch.h

    rd4d36f9 r9d58539  
    3636#define KERN_ARCH_H_
    3737
    38 #include <arch/arch.h>  /* arch_pre_main() */
    39 #include <arch/asm.h>   /* get_stack_base() */
    40 #include <config.h>
    41 
     38#include <arch/arch.h>
     39#include <proc/thread.h>
     40#include <proc/task.h>
     41#include <mm/as.h>
    4242
    4343/*
     
    4949#define THE  ((the_t * )(get_stack_base()))
    5050
     51#define CPU                  THE->cpu
     52#define THREAD               THE->thread
     53#define TASK                 THE->task
     54#define AS                   THE->as
     55#define PREEMPTION_DISABLED  THE->preemption_disabled
    5156#define MAGIC                UINT32_C(0xfacefeed)
    5257
     
    5762        ((THE->task) ? (THE->task->container) : (DEFAULT_CONTAINER))
    5863
    59 /* Fwd decl. to avoid include hell. */
    60 struct thread;
    61 struct task;
    62 struct cpu;
    63 struct as;
    64 
    6564/**
    6665 * For each possible kernel stack, structure
     
    6968 */
    7069typedef struct {
    71         size_t preemption;     /**< Preemption disabled counter and flag. */
    72 #ifdef RCU_PREEMPT_A
    73         size_t rcu_nesting;    /**< RCU nesting count and flag. */
    74 #endif
    75         struct thread *thread; /**< Current thread. */
    76         struct task *task;     /**< Current task. */
    77         struct cpu *cpu;       /**< Executing cpu. */
    78         struct as *as;         /**< Current address space. */
    79         uint32_t magic;        /**< Magic value */
     70        size_t preemption_disabled;  /**< Preemption disabled counter. */
     71        thread_t *thread;            /**< Current thread. */
     72        task_t *task;                /**< Current task. */
     73        cpu_t *cpu;                  /**< Executing cpu. */
     74        as_t *as;                    /**< Current address space. */
     75        uint32_t magic;              /**< Magic value */
    8076} the_t;
    8177
     
    9591extern void *arch_construct_function(fncptr_t *, void *, void *);
    9692
    97 
    9893#endif
    9994
Note: See TracChangeset for help on using the changeset viewer.