From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH] kvm: x86: increase user memory slots to 509 Date: Thu, 06 Nov 2014 17:23:58 +0100 Message-ID: <545BA09E.7040301@redhat.com> References: <1415289167-24661-1-git-send-email-imammedo@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Cc: kvm@vger.kernel.org, x86@kernel.org To: Igor Mammedov , linux-kernel@vger.kernel.org Return-path: In-Reply-To: <1415289167-24661-1-git-send-email-imammedo@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 06/11/2014 16:52, Igor Mammedov wrote: > With the 3 private slots, this gives us 512 slots total. > Motivation for this is in addition to assigned devices > support more memory hotplug slots, where 1 slot is > used by a hotplugged memory stick. > It will allow to support upto 256 hotplug memory > slots and leave 253 slots for assigned devices and > other devices that use them. > > Signed-off-by: Igor Mammedov It would use more memory, and some loops are now becoming more expensive. In general adding a memory slot to a VM is not cheap, and I question the wisdom of having 256 hotplug memory slots. But the slowdown mostly would only happen if you actually _use_ those memory slots, so it is not a blocker for this patch. We probably should change the kmemdup + heap sort of __kvm_set_memory_region + update_memslots to copy the array and insert the new item at the right place, at the same time. Using a heap sort is overkill and unnecessarily goes from O(n^2) to O(n^2 log n). With a bigger constant in front as well. If you want to do it, I'd be grateful. Otherwise I can look at it as time permits. Paolo