~adam-hraska+lp/helenos/cht-bench

« back to all changes in this revision

Viewing changes to kernel/arch/abs32le/include/mm/page.h

  • Committer: Adam Hraska
  • Date: 2012-08-08 17:19:28 UTC
  • mfrom: (1574.1.16 rcu-clone)
  • Revision ID: adam.hraska+hos@gmail.com-20120808171928-7gf0fh7pcxxcoaoo
Merged in mainline changes from rcu-clone.

Show diffs side-by-side

added added

removed removed

Lines of Context:
104
104
#define SET_FRAME_FLAGS_ARCH(ptl3, i, x) \
105
105
        set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x))
106
106
 
 
107
/* Set PTE present bit accessors for each level. */
 
108
#define SET_PTL1_PRESENT_ARCH(ptl0, i)  \
 
109
        set_pt_present((pte_t *) (ptl0), (size_t) (i))
 
110
#define SET_PTL2_PRESENT_ARCH(ptl1, i)
 
111
#define SET_PTL3_PRESENT_ARCH(ptl2, i)
 
112
#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
 
113
        set_pt_present((pte_t *) (ptl3), (size_t) (i))
 
114
 
107
115
/* Macros for querying the last level entries. */
108
116
#define PTE_VALID_ARCH(p) \
109
117
        (*((uint32_t *) (p)) != 0)
172
180
        p->soft_valid = true;
173
181
}
174
182
 
 
183
NO_TRACE static inline void set_pt_present(pte_t *pt, size_t i)
 
184
    WRITES(ARRAY_RANGE(pt, PTL0_ENTRIES_ARCH))
 
185
    REQUIRES_ARRAY_MUTABLE(pt, PTL0_ENTRIES_ARCH)
 
186
{
 
187
        pte_t *p = &pt[i];
 
188
 
 
189
        p->present = 1;
 
190
}
 
191
 
175
192
extern void page_arch_init(void);
176
193
extern void page_fault(unsigned int, istate_t *);
177
194