[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2.1 v7 0/3] Add max-ram-below-4g (was Add pci_ho
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH 2.1 v7 0/3] Add max-ram-below-4g (was Add pci_hole_min_size machine option) |
Date: |
Mon, 23 Jun 2014 17:41:37 +0300 |
On Thu, Jun 19, 2014 at 09:40:23PM -0400, Don Slutz wrote:
> Changes v6 to v7:
> Drop most of v5 to v6 changes.
>
> Michael S. Tsirkin:
> #2 "pc & q35: Add new machine opt max-ram-below-4g":
> default: max-ram-below-4g=4g
> pc & q35:
> calculate lowmem
> lowmem = MIN(lowmem, max-ram-below-4g)
> calculate above_4g_mem_size and below_4g_mem_size
>
> #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).
>
Applied, thanks!
> Changes v5 to v6:
> rebased on git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git pci
>
> 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.
>
> 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=3.75G" or
> "max-ram-below-4g=3.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.
>
> 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"
>
> #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 default 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.
>
>
> Changes v4 to v5:
> Re-work based on:
>
> https://github.com/imammedo/qemu/commits/memory-hotplug-v11
>
> And so it now depends on this patch set.
>
> Stefano Stabellini:
> #3 "xen-hvm: Pass is_default to xen_hvm_init"
> Acked-by
> Minor change of pmc to pcms.
>
> Changes v3 to v4:
> Split out #2 "GlobalProperty: Display warning about unused -global"
> rebase on e00fcfe (origin/master)
> rename xen-all to xen-hvm
>
> Adjust #1 "xen-hvm: Fix xen_hvm_init() to adjust pc memory layout"
> Switch Acked-by & Signed-off-by
> rebase on master
>
> 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.
>
> Andreas Färber:
> all: Remove dot at end of subject
> #3 "xen-hvm: Pass is_default to xen_hvm_init"
> Adjust comment formatting.
>
> Andreas Färber, Paolo Bonzini, Marcel Apfelbaum:
> rework to use "opts per machine"
> Drop old #3, new #2.
>
>
> 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
> xen_hvm_init."
> Set max_ram_below_4g always and use it to calculate above_4g_mem_size,
> below_4g_mem_size.
>
> Changes v1 to v2:
> Michael S. Tsirkin:
> Rename option.
> Only add it to machine types that support it.
> Split into 4 parts.
>
> 1/4 -- xen-all: Fix xen_hvm_init() to adjust pc memory layout
>
> 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.
>
> 2/4 -- GlobalProperty: Display warning about unused -global
>
> 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.
>
> 3/4 -- pc & q35: Add new object pc-memory-layout
>
> 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.
>
> 4/4 -- xen-all: Pass max_ram_below_4g to xen_hvm_init
>
> Seprate the xen only part of the change. Currectly based on patch 1/4
>
> 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
>
> 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(-)
>
> --
> 1.8.4