diff options
author | Izik Eidus <izike@localhost.localdomain> | 2007-11-20 04:49:33 -0500 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2008-01-30 10:53:09 -0500 |
commit | b4231d61807cac8d9d257eb6979c1685fa9a171f (patch) | |
tree | 36b2064c0df4a2b2e11c5d9a2221c097bb0c7be9 /drivers/kvm/kvm.h | |
parent | 2065b3727ecdb64450597d70f7e13af00b85dbd8 (diff) |
KVM: MMU: Selectively set PageDirty when releasing guest memory
Improve dirty bit setting for pages that kvm release, until now every page
that we released we marked dirty, from now only pages that have potential
to get dirty we mark dirty.
Signed-off-by: Izik Eidus <izike@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/kvm.h')
-rw-r--r-- | drivers/kvm/kvm.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/kvm/kvm.h b/drivers/kvm/kvm.h index 52e80183e050..c2acd74389fa 100644 --- a/drivers/kvm/kvm.h +++ b/drivers/kvm/kvm.h | |||
@@ -393,7 +393,8 @@ int __kvm_set_memory_region(struct kvm *kvm, | |||
393 | int user_alloc); | 393 | int user_alloc); |
394 | gfn_t unalias_gfn(struct kvm *kvm, gfn_t gfn); | 394 | gfn_t unalias_gfn(struct kvm *kvm, gfn_t gfn); |
395 | struct page *gfn_to_page(struct kvm *kvm, gfn_t gfn); | 395 | struct page *gfn_to_page(struct kvm *kvm, gfn_t gfn); |
396 | void kvm_release_page(struct page *page); | 396 | void kvm_release_page_clean(struct page *page); |
397 | void kvm_release_page_dirty(struct page *page); | ||
397 | int kvm_read_guest_page(struct kvm *kvm, gfn_t gfn, void *data, int offset, | 398 | int kvm_read_guest_page(struct kvm *kvm, gfn_t gfn, void *data, int offset, |
398 | int len); | 399 | int len); |
399 | int kvm_read_guest(struct kvm *kvm, gpa_t gpa, void *data, unsigned long len); | 400 | int kvm_read_guest(struct kvm *kvm, gpa_t gpa, void *data, unsigned long len); |