Re: [PATCH v2 14/15] KVM: Terminate memslot walks via used_slots
From: Paolo Bonzini <pbonzini@redhat.com>
Date: 2019-10-22 15:31:05
Also in:
kvm, kvmarm, linux-mips, lkml
From: Paolo Bonzini <pbonzini@redhat.com>
Date: 2019-10-22 15:31:05
Also in:
kvm, kvmarm, linux-mips, lkml
On 22/10/19 17:28, Sean Christopherson wrote:
On Tue, Oct 22, 2019 at 04:04:18PM +0200, Paolo Bonzini wrote:quoted
On 22/10/19 02:35, Sean Christopherson wrote:quoted
+static inline int kvm_shift_memslots_forward(struct kvm_memslots *slots, + struct kvm_memory_slot *new) +{ + struct kvm_memory_slot *mslots = slots->memslots; + int i; + + if (WARN_ON_ONCE(slots->id_to_index[new->id] == -1) || + WARN_ON_ONCE(!slots->used_slots)) + return -1; + + for (i = slots->id_to_index[new->id]; i < slots->used_slots - 1; i++) { + if (new->base_gfn > mslots[i + 1].base_gfn) + break; + + WARN_ON_ONCE(new->base_gfn == mslots[i + 1].base_gfn); + + /* Shift the next memslot forward one and update its index. */ + mslots[i] = mslots[i + 1]; + slots->id_to_index[mslots[i].id] = i; + } + return i; +} + +static inline int kvm_shift_memslots_back(struct kvm_memslots *slots, + struct kvm_memory_slot *new, + int start)This new implementation of the insertion sort loses the comments that were there in the old one. Please keep them as function comments.I assume you're talking about this blurb in particular? * The ">=" is needed when creating a slot with base_gfn == 0, * so that it moves before all those with base_gfn == npages == 0.
Yes, well all of the comments. You can also keep them in the caller, as you prefer. Paolo _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel