Lines Matching refs:ctx
44 static unsigned get_cxn(mm_context_t *ctx) in get_cxn() argument
50 if (!list_empty(&ctx->id_link)) { in get_cxn()
51 list_move_tail(&ctx->id_link, &cxn_owners_lru); in get_cxn()
78 ctx->id = cxn; in get_cxn()
79 list_add_tail(&ctx->id_link, &cxn_owners_lru); in get_cxn()
82 return ctx->id; in get_cxn()
90 void change_mm_context(mm_context_t *old, mm_context_t *ctx, pgd_t *pgd) in change_mm_context() argument
106 get_cxn(ctx); in change_mm_context()
107 ctx->id_busy = 1; in change_mm_context()
110 asm volatile("movgs %0,cxnr" : : "r"(ctx->id)); in change_mm_context()
113 asm volatile("movgs %0,scr0" : : "r"(ctx->itlb_cached_pge)); in change_mm_context()
114 asm volatile("movgs %0,dampr4" : : "r"(ctx->itlb_ptd_mapping)); in change_mm_context()
115 asm volatile("movgs %0,scr1" : : "r"(ctx->dtlb_cached_pge)); in change_mm_context()
116 asm volatile("movgs %0,dampr5" : : "r"(ctx->dtlb_ptd_mapping)); in change_mm_context()
132 mm_context_t *ctx = &mm->context; in destroy_context() local
136 if (!list_empty(&ctx->id_link)) { in destroy_context()
137 if (ctx->id == cxn_pinned) in destroy_context()
140 list_del_init(&ctx->id_link); in destroy_context()
141 clear_bit(ctx->id, cxn_bitmap); in destroy_context()
142 __flush_tlb_mm(ctx->id); in destroy_context()
143 ctx->id = 0; in destroy_context()