diff mbox

[RFC,v1,2/2] spapr: Force gaps between DIMM's GPA

Message ID 1444373400-18423-3-git-send-email-bharata@linux.vnet.ibm.com
State New
Headers show

Commit Message

Bharata B Rao Oct. 9, 2015, 6:50 a.m. UTC
Mapping DIMMs non contiguously allows to workaround virtio bug reported
earlier:
http://lists.nongnu.org/archive/html/qemu-devel/2015-08/msg00522.html
In this case guest kernel doesn't allocate buffers that can cross DIMM
boundary keeping each buffer local to a DIMM.

Suggested-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
---
 hw/ppc/spapr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Igor Mammedov Oct. 12, 2015, 1:31 p.m. UTC | #1
On Fri,  9 Oct 2015 12:20:00 +0530
Bharata B Rao <bharata@linux.vnet.ibm.com> wrote:

> Mapping DIMMs non contiguously allows to workaround virtio bug
> reported earlier:
> http://lists.nongnu.org/archive/html/qemu-devel/2015-08/msg00522.html
> In this case guest kernel doesn't allocate buffers that can cross DIMM
> boundary keeping each buffer local to a DIMM.
> 
> Suggested-by: Michael S. Tsirkin <mst@redhat.com>
> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>

> ---
>  hw/ppc/spapr.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index 4a901f0..a66833f 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -2137,7 +2137,7 @@ static void spapr_memory_plug(HotplugHandler
> *hotplug_dev, DeviceState *dev, goto out;
>      }
>  
> -    pc_dimm_memory_plug(dev, &ms->hotplug_memory, mr, align, false,
> &local_err);
> +    pc_dimm_memory_plug(dev, &ms->hotplug_memory, mr, align, true,
> &local_err); if (local_err) {
>          goto out;
>      }
diff mbox

Patch

diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 4a901f0..a66833f 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -2137,7 +2137,7 @@  static void spapr_memory_plug(HotplugHandler *hotplug_dev, DeviceState *dev,
         goto out;
     }
 
-    pc_dimm_memory_plug(dev, &ms->hotplug_memory, mr, align, false, &local_err);
+    pc_dimm_memory_plug(dev, &ms->hotplug_memory, mr, align, true, &local_err);
     if (local_err) {
         goto out;
     }