Lines Matching refs:flush
58 struct hv_tlb_flush *flush; in hyperv_flush_tlb_others() local
75 flush = *flush_pcpu; in hyperv_flush_tlb_others()
77 if (unlikely(!flush)) { in hyperv_flush_tlb_others()
87 flush->address_space = virt_to_phys(info->mm->pgd); in hyperv_flush_tlb_others()
88 flush->address_space &= CR3_ADDR_MASK; in hyperv_flush_tlb_others()
89 flush->flags = 0; in hyperv_flush_tlb_others()
91 flush->address_space = 0; in hyperv_flush_tlb_others()
92 flush->flags = HV_FLUSH_ALL_VIRTUAL_ADDRESS_SPACES; in hyperv_flush_tlb_others()
95 flush->processor_mask = 0; in hyperv_flush_tlb_others()
97 flush->flags |= HV_FLUSH_ALL_PROCESSORS; in hyperv_flush_tlb_others()
124 &flush->processor_mask); in hyperv_flush_tlb_others()
132 max_gvas = (PAGE_SIZE - sizeof(*flush)) / sizeof(flush->gva_list[0]); in hyperv_flush_tlb_others()
135 flush->flags |= HV_FLUSH_NON_GLOBAL_MAPPINGS_ONLY; in hyperv_flush_tlb_others()
137 flush, NULL); in hyperv_flush_tlb_others()
141 flush, NULL); in hyperv_flush_tlb_others()
143 gva_n = fill_gva_list(flush->gva_list, 0, in hyperv_flush_tlb_others()
146 gva_n, 0, flush, NULL); in hyperv_flush_tlb_others()
167 struct hv_tlb_flush_ex *flush; in hyperv_flush_tlb_others_ex() local
176 flush = *flush_pcpu; in hyperv_flush_tlb_others_ex()
183 flush->address_space = virt_to_phys(info->mm->pgd); in hyperv_flush_tlb_others_ex()
184 flush->address_space &= CR3_ADDR_MASK; in hyperv_flush_tlb_others_ex()
185 flush->flags = 0; in hyperv_flush_tlb_others_ex()
187 flush->address_space = 0; in hyperv_flush_tlb_others_ex()
188 flush->flags = HV_FLUSH_ALL_VIRTUAL_ADDRESS_SPACES; in hyperv_flush_tlb_others_ex()
191 flush->hv_vp_set.valid_bank_mask = 0; in hyperv_flush_tlb_others_ex()
193 flush->hv_vp_set.format = HV_GENERIC_SET_SPARSE_4K; in hyperv_flush_tlb_others_ex()
194 nr_bank = cpumask_to_vpset(&(flush->hv_vp_set), cpus); in hyperv_flush_tlb_others_ex()
203 (PAGE_SIZE - sizeof(*flush) - nr_bank * in hyperv_flush_tlb_others_ex()
204 sizeof(flush->hv_vp_set.bank_contents[0])) / in hyperv_flush_tlb_others_ex()
205 sizeof(flush->gva_list[0]); in hyperv_flush_tlb_others_ex()
208 flush->flags |= HV_FLUSH_NON_GLOBAL_MAPPINGS_ONLY; in hyperv_flush_tlb_others_ex()
211 0, nr_bank, flush, NULL); in hyperv_flush_tlb_others_ex()
216 0, nr_bank, flush, NULL); in hyperv_flush_tlb_others_ex()
218 gva_n = fill_gva_list(flush->gva_list, nr_bank, in hyperv_flush_tlb_others_ex()
222 gva_n, nr_bank, flush, NULL); in hyperv_flush_tlb_others_ex()