WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] [IA64] Xen/ia64 XENMEM_exchange bug work

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] Xen/ia64 XENMEM_exchange bug work around
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 23 Mar 2007 05:30:23 -0700
Delivery-date: Fri, 23 Mar 2007 05:30:10 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User awilliam@xxxxxxxxxxxx
# Date 1173296552 25200
# Node ID 210858e4f6d5abbf15ea24251f5306c0f3e32c9b
# Parent  50d5bf02e59e47735d563cf95d792dd14bc30939
[IA64] Xen/ia64 XENMEM_exchange bug work around

xen-unstable.hg c/s 13366:ed73ff8440d8 revealed that
XENMEM_exchange has been broken on Xen/ia64.
This is work around for it until the right fix.

Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
---
 linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+)

diff -r 50d5bf02e59e -r 210858e4f6d5 
linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c
--- a/linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c   Wed Mar 07 12:38:28 
2007 -0700
+++ b/linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c   Wed Mar 07 12:42:32 
2007 -0700
@@ -205,6 +205,18 @@ static void contiguous_bitmap_clear(
 #define MAX_CONTIG_ORDER 7
 static unsigned long discontig_frames[1<<MAX_CONTIG_ORDER];
 
+/* Width of DMA addresses. 30 bits is a b44 limitation. */
+#define DEFAULT_DMA_BITS 30
+static unsigned int xen_ia64_dma_bits = DEFAULT_DMA_BITS;
+
+static int __init
+setup_dma_bits(char *str)
+{
+       xen_ia64_dma_bits = simple_strtoul(str, NULL, 0);
+       return 0;
+}
+__setup("xen_ia64_dma_bits=", setup_dma_bits);
+
 /* Ensure multi-page extents are contiguous in machine memory. */
 int
 __xen_create_contiguous_region(unsigned long vstart,
@@ -233,6 +245,15 @@ __xen_create_contiguous_region(unsigned 
                 },
                .nr_exchanged = 0
        };
+
+       /*
+        * XXX xen/ia64 vmm bug work around
+        * the c/s 13366:ed73ff8440d8 of xen-unstable.hg revealed that
+        * XENMEM_exchange has been broken on Xen/ia64.
+        * This is work around for it until the right fix.
+        */
+       if (address_bits < xen_ia64_dma_bits)
+               return -ENOSYS;
 
        if (unlikely(order > MAX_CONTIG_ORDER))
                return -ENOMEM;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] Xen/ia64 XENMEM_exchange bug work around, Xen patchbot-unstable <=