Skip to content

Commit

Permalink
kvm: update_memslots: drop not needed check for the same number of pages
Browse files Browse the repository at this point in the history
if number of pages haven't changed sorting algorithm
will do nothing, so there is no need to do extra check
to avoid entering sorting logic.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
  • Loading branch information
Igor Mammedov authored and bonzini committed Dec 4, 2014
1 parent 45c3094 commit 5a38b6e
Showing 1 changed file with 13 additions and 15 deletions.
28 changes: 13 additions & 15 deletions virt/kvm/kvm_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -679,21 +679,19 @@ static void update_memslots(struct kvm_memslots *slots,
struct kvm_memory_slot *mslots = slots->memslots;

WARN_ON(mslots[i].id != id);
if (new->npages != mslots[i].npages) {
if (new->npages < mslots[i].npages) {
while (i < KVM_MEM_SLOTS_NUM - 1 &&
new->npages < mslots[i + 1].npages) {
mslots[i] = mslots[i + 1];
slots->id_to_index[mslots[i].id] = i;
i++;
}
} else {
while (i > 0 &&
new->npages > mslots[i - 1].npages) {
mslots[i] = mslots[i - 1];
slots->id_to_index[mslots[i].id] = i;
i--;
}
if (new->npages < mslots[i].npages) {
while (i < KVM_MEM_SLOTS_NUM - 1 &&
new->npages < mslots[i + 1].npages) {
mslots[i] = mslots[i + 1];
slots->id_to_index[mslots[i].id] = i;
i++;
}
} else {
while (i > 0 &&
new->npages > mslots[i - 1].npages) {
mslots[i] = mslots[i - 1];
slots->id_to_index[mslots[i].id] = i;
i--;
}
}

Expand Down

0 comments on commit 5a38b6e

Please sign in to comment.