Lines Matching refs:ctxp
109 static inline void srmmu_ctxd_set(ctxd_t *ctxp, pgd_t *pgdp) in srmmu_ctxd_set() argument
110 { set_pte((pte_t *)ctxp, (SRMMU_ET_PTD | (__nocache_pa((unsigned long) pgdp) >> 4))); } in srmmu_ctxd_set()
406 struct ctx_list *ctxp; in alloc_context() local
408 ctxp = ctx_free.next; in alloc_context()
409 if (ctxp != &ctx_free) { in alloc_context()
410 remove_from_ctx_list(ctxp); in alloc_context()
411 add_to_used_ctxlist(ctxp); in alloc_context()
412 mm->context = ctxp->ctx_number; in alloc_context()
413 ctxp->ctx_mm = mm; in alloc_context()
416 ctxp = ctx_used.next; in alloc_context()
417 if (ctxp->ctx_mm == old_mm) in alloc_context()
418 ctxp = ctxp->next; in alloc_context()
419 if (ctxp == &ctx_used) in alloc_context()
421 flush_cache_mm(ctxp->ctx_mm); in alloc_context()
422 flush_tlb_mm(ctxp->ctx_mm); in alloc_context()
423 remove_from_ctx_list(ctxp); in alloc_context()
424 add_to_used_ctxlist(ctxp); in alloc_context()
425 ctxp->ctx_mm->context = NO_CONTEXT; in alloc_context()
426 ctxp->ctx_mm = mm; in alloc_context()
427 mm->context = ctxp->ctx_number; in alloc_context()