From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48503) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wz5R6-0001QS-Lb for qemu-devel@nongnu.org; Mon, 23 Jun 2014 10:41:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wz5R0-0007Lh-U4 for qemu-devel@nongnu.org; Mon, 23 Jun 2014 10:41:32 -0400 Received: from mx1.redhat.com ([209.132.183.28]:5455) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wz5R0-0007LH-M2 for qemu-devel@nongnu.org; Mon, 23 Jun 2014 10:41:26 -0400 Date: Mon, 23 Jun 2014 17:41:37 +0300 From: "Michael S. Tsirkin" Message-ID: <20140623144137.GA24152@redhat.com> References: <1403228426-7609-1-git-send-email-dslutz@verizon.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <1403228426-7609-1-git-send-email-dslutz@verizon.com> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 2.1 v7 0/3] Add max-ram-below-4g (was Add pci_hole_min_size machine option) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Don Slutz Cc: xen-devel@lists.xensource.com, Stefano Stabellini , Marcel Apfelbaum , qemu-devel@nongnu.org, Anthony Liguori , Igor Mammedov , Andreas =?iso-8859-1?Q?F=E4rber?= On Thu, Jun 19, 2014 at 09:40:23PM -0400, Don Slutz wrote: > Changes v6 to v7: > Drop most of v5 to v6 changes. >=20 > Michael S. Tsirkin: > #2 "pc & q35: Add new machine opt max-ram-below-4g": > default: max-ram-below-4g=3D4g > pc & q35: > calculate lowmem > lowmem =3D MIN(lowmem, max-ram-below-4g) > calculate above_4g_mem_size and below_4g_mem_size >=20 > #3 "xen-hvm: Handle machine opt max-ram-below-4g": > Rename from "xen-hvm: Pass is_default to xen_hvm_init" > Drop is_default. > Use object_property_get_int() to get max-ram-below-4g. > Do min(xen limit, user limit). >=20 Applied, thanks! > Changes v5 to v6: > rebased on git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git pci >=20 > Changed default handling. Most pc machines are now set to 3.5G > (0xe0000000) and q35 are set to 2.75G (0xb0000000). The special > value of 0 is used to flag the complex gigabyte_align memory > layout selection. >=20 > I did change the default for pc-i440fx-2.1 to 3G and pc-q35-2.1 to > 2G instead of the complex gigabyte_align. This looks ok to me > because the statement by Gerd Hoffmann is about more ram for 32 > bit (+non-PAE) guests can now have more then the defualt by > specifing the new option like "max-ram-below-4g=3D3.75G" or > "max-ram-below-4g=3D3.9375G". Or if that is too complex to > understand just select pc-i440fx-2.0 or pc-q35-2.0 to get what > they use to get. >=20 > Michael S. Tsirkin, Igor Mammedov, Marcel Apfelbaum: > #2 "pc & q35: Add new machine opt max-ram-below-4g": > Added setting of .default_machine_opts to include max-ram-below-= 4g > for all pc types. > Removed gigabyte_align. > Added warning on small value. > "less then" to "less than" >=20 > #3 "xen-hvm: Pass is_default to xen_hvm_init": > Changed to work with the changes in #2: > Added max_ram_below_4g_changed in order to know if it is a defaul= t value > or a user specified one. > Added "assert(pc_machine->max_ram_below_4g_changed > 0)" so that > "make check" will abort on default not set for any of the pc or > q35 machine types. > Dropped "Acked-by: Stefano Stabellin" do to bigger change. >=20 >=20 > Changes v4 to v5: > Re-work based on: >=20 > https://github.com/imammedo/qemu/commits/memory-hotplug-v11 >=20 > And so it now depends on this patch set. >=20 > Stefano Stabellini: > #3 "xen-hvm: Pass is_default to xen_hvm_init" > Acked-by=20 > Minor change of pmc to pcms. >=20 > Changes v3 to v4: > Split out #2 "GlobalProperty: Display warning about unused -global" > rebase on e00fcfe (origin/master) > rename xen-all to xen-hvm >=20 > Adjust #1 "xen-hvm: Fix xen_hvm_init() to adjust pc memory layout" > Switch Acked-by & Signed-off-by > rebase on master >=20 > Rework #3 "xen-hvm: Pass is_default to xen_hvm_init": > To pass is_default instead of max_ram_below_4g. > Also did not add "Acked-by: Stefano Stabellini" since code changed = a lot. >=20 > Andreas F=E4rber: > all: Remove dot at end of subject > #3 "xen-hvm: Pass is_default to xen_hvm_init" > Adjust comment formatting. >=20 > Andreas F=E4rber, Paolo Bonzini, Marcel Apfelbaum: > rework to use "opts per machine" > Drop old #3, new #2. > =20 >=20 > Changes v2 to v3: > Stefano Stabellini: > Acked-by #1 "xen-all: Fix xen_hvm_init() to adjust pc memory" > Adjust for code readability #4 "xen-all: Pass max_ram_below_4g to x= en_hvm_init." > Set max_ram_below_4g always and use it to calculate above_4g_mem= _size, > below_4g_mem_size. >=20 > Changes v1 to v2: > Michael S. Tsirkin: > Rename option. > Only add it to machine types that support it. > Split into 4 parts. >=20 > 1/4 -- xen-all: Fix xen_hvm_init() to adjust pc memory layout >=20 > This looks to be a possible bug that has yet to be found. > below_4g_mem_size and above_4g_mem_size are stored in PcGuestInfo > (pc_guest_info_init) which are currently not "correct". This and > 4/4 change the same lines. >=20 > 2/4 -- GlobalProperty: Display warning about unused -global >=20 > My testing showed that setting a global property on an object > that is not used is not reported at all. This is added to help > when the new global is set but not used. The negative not_used > was picked so that all static objects are assumed to be used > even when they are not. >=20 > 3/4 -- pc & q35: Add new object pc-memory-layout >=20 > The objects that it might make sense to add this property to all > get created too late. So add a new object just to hold this > property. Name it so that it is expected that only pc (and q35) > machine types support it. >=20 > 4/4 -- xen-all: Pass max_ram_below_4g to xen_hvm_init >=20 > Seprate the xen only part of the change. Currectly based on patch 1/= 4 >=20 > Don Slutz (3): > xen-hvm: Fix xen_hvm_init() to adjust pc memory layout > pc & q35: Add new machine opt max-ram-below-4g > xen-hvm: Handle machine opt max-ram-below-4g >=20 > hw/i386/pc.c | 47 ++++++++++++++++++++++++++++++++++++++++++++= ++ > hw/i386/pc_piix.c | 53 ++++++++++++++++++++++++++++++++++++--------= -------- > hw/i386/pc_q35.c | 51 +++++++++++++++++++++++++++++++++++---------= ------ > include/hw/i386/pc.h | 3 +++ > include/hw/xen/xen.h | 3 ++- > vl.c | 4 ++++ > xen-hvm-stub.c | 3 ++- > xen-hvm.c | 53 +++++++++++++++++++++++++++++++++-----------= -------- > 8 files changed, 165 insertions(+), 52 deletions(-) >=20 > --=20 > 1.8.4