Changeset b1c57a8 in mainline for kernel/generic/include/arch.h


Ignore:
Timestamp:
2014-10-09T15:03:55Z (10 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e367939c
Parents:
21799398 (diff), 207e8880 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge from lp:~adam-hraska+lp/helenos/rcu/.

Only merge from the feature branch and resolve all conflicts.

File:
1 edited

Legend:

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

    r21799398 rb1c57a8  
    3636#define KERN_ARCH_H_
    3737
    38 #include <arch/arch.h>
    39 #include <proc/thread.h>
    40 #include <proc/task.h>
    41 #include <mm/as.h>
     38#include <arch/arch.h>  /* arch_pre_main() */
     39#include <arch/asm.h>   /* get_stack_base() */
     40#include <config.h>
     41
    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
    5651#define MAGIC                UINT32_C(0xfacefeed)
    5752
     
    6257        ((THE->task) ? (THE->task->container) : (DEFAULT_CONTAINER))
    6358
     59/* Fwd decl. to avoid include hell. */
     60struct thread;
     61struct task;
     62struct cpu;
     63struct as;
     64
    6465/**
    6566 * For each possible kernel stack, structure
     
    6869 */
    6970typedef struct {
    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 */
     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 */
    7680} the_t;
    7781
     
    9195extern void *arch_construct_function(fncptr_t *, void *, void *);
    9296
     97
    9398#endif
    9499
Note: See TracChangeset for help on using the changeset viewer.