Lines Matching refs:pte
139 # define pte_none(pte) (!(((pte).pte_high) & ~_PAGE_GLOBAL)) argument
141 # define pte_none(pte) (!(((pte).pte_low | (pte).pte_high) & ~_PAGE_GLOBAL)) argument
144 #define pte_present(pte) ((pte).pte_low & _PAGE_PRESENT) argument
145 #define pte_no_exec(pte) ((pte).pte_low & _PAGE_NO_EXEC) argument
147 static inline void set_pte(pte_t *ptep, pte_t pte) argument
149 ptep->pte_high = pte.pte_high;
151 ptep->pte_low = pte.pte_low;
154 if (pte.pte_high & _PAGE_GLOBAL) {
156 if (pte.pte_low & _PAGE_GLOBAL) {
190 #define pte_none(pte) (!(pte_val(pte) & ~_PAGE_GLOBAL)) argument
191 #define pte_present(pte) (pte_val(pte) & _PAGE_PRESENT) argument
192 #define pte_no_exec(pte) (pte_val(pte) & _PAGE_NO_EXEC) argument
210 cmpxchg64(&buddy->pte, 0, _PAGE_GLOBAL);
212 cmpxchg(&buddy->pte, 0, _PAGE_GLOBAL);
235 extern void __update_cache(unsigned long address, pte_t pte);
277 static inline int pte_write(pte_t pte) { return pte.pte_low & _PAGE_WRITE; } argument
278 static inline int pte_dirty(pte_t pte) { return pte.pte_low & _PAGE_MODIFIED; } argument
279 static inline int pte_young(pte_t pte) { return pte.pte_low & _PAGE_ACCESSED; } argument
280 static inline int pte_special(pte_t pte) { return pte.pte_low & _PAGE_SPECIAL; } argument
282 static inline pte_t pte_wrprotect(pte_t pte) argument
284 pte.pte_low &= ~_PAGE_WRITE;
286 pte.pte_low &= ~_PAGE_SILENT_WRITE;
287 pte.pte_high &= ~_PAGE_SILENT_WRITE;
288 return pte;
291 static inline pte_t pte_mkclean(pte_t pte) argument
293 pte.pte_low &= ~_PAGE_MODIFIED;
295 pte.pte_low &= ~_PAGE_SILENT_WRITE;
296 pte.pte_high &= ~_PAGE_SILENT_WRITE;
297 return pte;
300 static inline pte_t pte_mkold(pte_t pte) argument
302 pte.pte_low &= ~_PAGE_ACCESSED;
304 pte.pte_low &= ~_PAGE_SILENT_READ;
305 pte.pte_high &= ~_PAGE_SILENT_READ;
306 return pte;
309 static inline pte_t pte_mkwrite(pte_t pte) argument
311 pte.pte_low |= _PAGE_WRITE;
312 if (pte.pte_low & _PAGE_MODIFIED) {
314 pte.pte_low |= _PAGE_SILENT_WRITE;
315 pte.pte_high |= _PAGE_SILENT_WRITE;
317 return pte;
320 static inline pte_t pte_mkdirty(pte_t pte) argument
322 pte.pte_low |= _PAGE_MODIFIED;
323 if (pte.pte_low & _PAGE_WRITE) {
325 pte.pte_low |= _PAGE_SILENT_WRITE;
326 pte.pte_high |= _PAGE_SILENT_WRITE;
328 return pte;
331 static inline pte_t pte_mkyoung(pte_t pte) argument
333 pte.pte_low |= _PAGE_ACCESSED;
334 if (!(pte.pte_low & _PAGE_NO_READ)) {
336 pte.pte_low |= _PAGE_SILENT_READ;
337 pte.pte_high |= _PAGE_SILENT_READ;
339 return pte;
342 static inline pte_t pte_mkspecial(pte_t pte) argument
344 pte.pte_low |= _PAGE_SPECIAL;
345 return pte;
348 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } argument
349 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_MODIFIED; } argument
350 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } argument
351 static inline int pte_special(pte_t pte) { return pte_val(pte) & _PAGE_SPECIAL; } argument
353 static inline pte_t pte_wrprotect(pte_t pte) argument
355 pte_val(pte) &= ~(_PAGE_WRITE | _PAGE_SILENT_WRITE);
356 return pte;
359 static inline pte_t pte_mkclean(pte_t pte) argument
361 pte_val(pte) &= ~(_PAGE_MODIFIED | _PAGE_SILENT_WRITE);
362 return pte;
365 static inline pte_t pte_mkold(pte_t pte) argument
367 pte_val(pte) &= ~(_PAGE_ACCESSED | _PAGE_SILENT_READ);
368 return pte;
371 static inline pte_t pte_mkwrite(pte_t pte) argument
373 pte_val(pte) |= _PAGE_WRITE;
374 if (pte_val(pte) & _PAGE_MODIFIED)
375 pte_val(pte) |= _PAGE_SILENT_WRITE;
376 return pte;
379 static inline pte_t pte_mkdirty(pte_t pte) argument
381 pte_val(pte) |= _PAGE_MODIFIED;
382 if (pte_val(pte) & _PAGE_WRITE)
383 pte_val(pte) |= _PAGE_SILENT_WRITE;
384 return pte;
387 static inline pte_t pte_mkyoung(pte_t pte) argument
389 pte_val(pte) |= _PAGE_ACCESSED;
390 if (!(pte_val(pte) & _PAGE_NO_READ))
391 pte_val(pte) |= _PAGE_SILENT_READ;
392 return pte;
395 static inline pte_t pte_mkspecial(pte_t pte) argument
397 pte_val(pte) |= _PAGE_SPECIAL;
398 return pte;
402 static inline int pte_huge(pte_t pte) { return pte_val(pte) & _PAGE_HUGE; } argument
404 static inline pte_t pte_mkhuge(pte_t pte) argument
406 pte_val(pte) |= _PAGE_HUGE;
407 return pte;
448 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) argument
450 pte.pte_low &= (_PAGE_MODIFIED | _PAGE_ACCESSED | _PFNX_MASK);
451 pte.pte_high &= (_PFN_MASK | _CACHE_MASK);
452 pte.pte_low |= pgprot_val(newprot) & ~_PFNX_MASK;
453 pte.pte_high |= pgprot_val(newprot) & ~(_PFN_MASK | _CACHE_MASK);
454 return pte;
457 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) argument
459 pte.pte_low &= _PAGE_CHG_MASK;
460 pte.pte_high &= (_PFN_MASK | _CACHE_MASK);
461 pte.pte_low |= pgprot_val(newprot);
462 pte.pte_high |= pgprot_val(newprot) & ~(_PFN_MASK | _CACHE_MASK);
463 return pte;
466 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) argument
468 return __pte((pte_val(pte) & _PAGE_CHG_MASK) |
475 pte_t pte);
480 pte_t pte = *ptep; local
481 __update_tlb(vma, address, pte);
487 pte_t pte = *(pte_t *)pmdp; local
489 __update_tlb(vma, address, pte);