Lines Matching refs:async_pf
40 INIT_LIST_HEAD(&vcpu->async_pf.done); in kvm_async_pf_vcpu_init()
41 INIT_LIST_HEAD(&vcpu->async_pf.queue); in kvm_async_pf_vcpu_init()
42 spin_lock_init(&vcpu->async_pf.lock); in kvm_async_pf_vcpu_init()
71 spin_lock(&vcpu->async_pf.lock); in async_pf_execute()
72 first = list_empty(&vcpu->async_pf.done); in async_pf_execute()
73 list_add_tail(&apf->link, &vcpu->async_pf.done); in async_pf_execute()
75 spin_unlock(&vcpu->async_pf.lock); in async_pf_execute()
115 spin_lock(&vcpu->async_pf.lock); in kvm_clear_async_pf_completion_queue()
118 while (!list_empty(&vcpu->async_pf.queue)) { in kvm_clear_async_pf_completion_queue()
120 list_first_entry(&vcpu->async_pf.queue, in kvm_clear_async_pf_completion_queue()
131 spin_unlock(&vcpu->async_pf.lock); in kvm_clear_async_pf_completion_queue()
140 spin_lock(&vcpu->async_pf.lock); in kvm_clear_async_pf_completion_queue()
143 while (!list_empty(&vcpu->async_pf.done)) { in kvm_clear_async_pf_completion_queue()
145 list_first_entry(&vcpu->async_pf.done, in kvm_clear_async_pf_completion_queue()
149 spin_unlock(&vcpu->async_pf.lock); in kvm_clear_async_pf_completion_queue()
151 spin_lock(&vcpu->async_pf.lock); in kvm_clear_async_pf_completion_queue()
153 spin_unlock(&vcpu->async_pf.lock); in kvm_clear_async_pf_completion_queue()
155 vcpu->async_pf.queued = 0; in kvm_clear_async_pf_completion_queue()
162 while (!list_empty_careful(&vcpu->async_pf.done) && in kvm_check_async_pf_completion()
164 spin_lock(&vcpu->async_pf.lock); in kvm_check_async_pf_completion()
165 work = list_first_entry(&vcpu->async_pf.done, typeof(*work), in kvm_check_async_pf_completion()
168 spin_unlock(&vcpu->async_pf.lock); in kvm_check_async_pf_completion()
175 vcpu->async_pf.queued--; in kvm_check_async_pf_completion()
189 if (vcpu->async_pf.queued >= ASYNC_PF_PER_VCPU) in kvm_setup_async_pf()
214 list_add_tail(&work->queue, &vcpu->async_pf.queue); in kvm_setup_async_pf()
215 vcpu->async_pf.queued++; in kvm_setup_async_pf()
228 if (!list_empty_careful(&vcpu->async_pf.done)) in kvm_async_pf_wakeup_all()
238 spin_lock(&vcpu->async_pf.lock); in kvm_async_pf_wakeup_all()
239 first = list_empty(&vcpu->async_pf.done); in kvm_async_pf_wakeup_all()
240 list_add_tail(&work->link, &vcpu->async_pf.done); in kvm_async_pf_wakeup_all()
241 spin_unlock(&vcpu->async_pf.lock); in kvm_async_pf_wakeup_all()
246 vcpu->async_pf.queued++; in kvm_async_pf_wakeup_all()