Messages in this thread | | | Date | Mon, 01 Nov 2010 17:34:50 +0800 | From | Xiao Guangrong <> | Subject | Re: [PATCH v2 5/7] KVM: handle more completed apfs if possible |
| |
On 11/01/2010 05:24 PM, Gleb Natapov wrote:
>> - put_page(work->page); >> - kmem_cache_free(async_pf_cache, work); >> + list_del(&work->queue); >> + vcpu->async_pf.queued--; >> + if (work->page) >> + put_page(work->page); >> + kmem_cache_free(async_pf_cache, work); >> + } while (ret && !list_empty_careful(&vcpu->async_pf.done)); >> } >> > No need to change kvm_arch_async_page_present() to return anything. You > can do while loop like this: > > while (!list_empty_careful(&vcpu->async_pf.done) && > kvm_arch_can_inject_async_page_present(vcpu)) { > } > > If kvm_arch_async_page_present() call injects exception > kvm_arch_can_inject_async_page_present() will return false on next > iteration.
Yeah, it's a better way, i'll fix it, thanks Gleb!
| |