KVM: cleanup kvm_get_dirty_log()
PATCH 1/1 KVM: cleanup kvm_get_dirty_log()
Using bitmap_empty() to see whether memslot->dirty_bitmap is empty
Signed-off-by Xiao Guangrong <[email protected]>
--- virt/kvm/kvm_main.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
virt/kvm/kvm_main.c +2 -4
@@ -767,8 +767,7 @@ int kvm_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log, int *is_dirty) { struct kvm_memory_slot *memslot; -int r, i; -int n; +int r, n;unsigned long any =0 ; r = -EINVAL ;
@@ -782,8 +781,7 @@ int kvm_get_dirty_log(struct kvm *kvm, n =ALIGN (memslot->npages,BITS_PER_LONG ) /8 ; -for (i =0 ; !any && i < n/sizeof (long ); ++i) - any = memslot->dirty_bitmap[i]; + any = !bitmap_empty (memslot->dirty_bitmap, memslot->npages); r = -EFAULT ;if (copy_to_user (log->dirty_bitmap, memslot->dirty_bitmap, n))
Signature · 1 line
1.6.1.2
Quoted 2 lines · Xiao Guangrong
Using
bitmap_empty()to see whethermemslot->dirty_bitmapis empty
You can do this for arch specific get_dirty_log() too.
Quoted 10 lines
Signed-off-by Xiao Guangrong <[email protected]>--- virt/kvm/kvm_main.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)virt/kvm/kvm_main.c +0
-0
virt/kvm/kvm_main.c int kvm_get_dirty_log(struct kvm *kvm, · line 771
Quoted 7 lines
virt/kvm/kvm_main.c +1
-2@@ -767,8 +767,7 @@ int kvm_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log, int *is_dirty) { struct kvm_memory_slot *memslot; -int r, i; -int n; +int r, n;unsigned long any =0 ;
any is no longer need to be unsigned long, if you do this?
Quoted 12 lines
virt/kvm/kvm_main.c +1
-2r = -EINVAL ;@@ -782,8 +781,7 @@ int kvm_get_dirty_log(struct kvm *kvm, n =ALIGN (memslot->npages,BITS_PER_LONG ) /8 ; -for (i =0 ; !any && i < n/sizeof (long ); ++i) - any = memslot->dirty_bitmap[i]; + any = !bitmap_empty (memslot->dirty_bitmap, memslot->npages); r = -EFAULT ;if (copy_to_user (log->dirty_bitmap, memslot->dirty_bitmap, n))
Quoted 5 lines · Takuya Yoshikawa
Quoted 2 lines · Xiao Guangrong
Using
bitmap_empty()to see whethermemslot->dirty_bitmapis emptyYou can do this for arch specific
get_dirty_log()too.
OK, i'll do it in the next version
Quoted 6 lines
Quoted 6 lines
Signed-off-by Xiao Guangrong <[email protected]>--- virt/kvm/kvm_main.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
Quoted 14 lines
virt/kvm/kvm_main.c int kvm_get_dirty_log(struct kvm *kvm, · line 771
Quoted 12 lines
virt/kvm/kvm_main.c +1
-2@@ -767,8 +767,7 @@ int kvm_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log, int *is_dirty) { struct kvm_memory_slot *memslot; -int r, i; -int n; +int r, n;unsigned long any =0 ;any is no longer need to be unsigned long, if you do this?
Yeah, right, thanks for you point out.
Xiao