• Home
  • Raw
  • Download

Lines Matching refs:asid

111 static inline u16 kern_pcid(u16 asid)  in kern_pcid()  argument
113 VM_WARN_ON_ONCE(asid > MAX_ASID_AVAILABLE); in kern_pcid()
126 VM_WARN_ON_ONCE(asid & (1 << X86_CR3_PTI_PCID_USER_BIT)); in kern_pcid()
141 return asid + 1; in kern_pcid()
147 static inline u16 user_pcid(u16 asid) in user_pcid() argument
149 u16 ret = kern_pcid(asid); in user_pcid()
156 static inline unsigned long build_cr3(pgd_t *pgd, u16 asid) in build_cr3() argument
159 return __sme_pa(pgd) | kern_pcid(asid); in build_cr3()
161 VM_WARN_ON_ONCE(asid != 0); in build_cr3()
166 static inline unsigned long build_cr3_noflush(pgd_t *pgd, u16 asid) in build_cr3_noflush() argument
168 VM_WARN_ON_ONCE(asid > MAX_ASID_AVAILABLE); in build_cr3_noflush()
175 return __sme_pa(pgd) | kern_pcid(asid) | CR3_NOFLUSH; in build_cr3_noflush()
186 u16 asid; in clear_asid_other() local
197 for (asid = 0; asid < TLB_NR_DYN_ASIDS; asid++) { in clear_asid_other()
199 if (asid == this_cpu_read(cpu_tlbstate.loaded_mm_asid)) in clear_asid_other()
205 this_cpu_write(cpu_tlbstate.ctxs[asid].ctx_id, 0); in clear_asid_other()
216 u16 asid; in choose_new_asid() local
227 for (asid = 0; asid < TLB_NR_DYN_ASIDS; asid++) { in choose_new_asid()
228 if (this_cpu_read(cpu_tlbstate.ctxs[asid].ctx_id) != in choose_new_asid()
232 *new_asid = asid; in choose_new_asid()
233 *need_flush = (this_cpu_read(cpu_tlbstate.ctxs[asid].tlb_gen) < in choose_new_asid()
256 static inline void invalidate_user_asid(u16 asid) in invalidate_user_asid() argument
272 __set_bit(kern_pcid(asid), in invalidate_user_asid()