]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - src/patches/suse-2.6.27.31/patches.xen/xen-swiotlb-heuristics
Move xen patchset to new version's subdir.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.xen / xen-swiotlb-heuristics
diff --git a/src/patches/suse-2.6.27.31/patches.xen/xen-swiotlb-heuristics b/src/patches/suse-2.6.27.31/patches.xen/xen-swiotlb-heuristics
new file mode 100644 (file)
index 0000000..8f71d28
--- /dev/null
@@ -0,0 +1,32 @@
+From: jbeulich@novell.com
+Subject: adjust Xen's swiotlb default size setting
+Patch-mainline: obsolete
+
+--- sle11-2009-02-05.orig/lib/swiotlb-xen.c    2009-02-05 11:18:17.000000000 +0100
++++ sle11-2009-02-05/lib/swiotlb-xen.c 2009-02-05 11:18:23.000000000 +0100
+@@ -224,8 +224,8 @@ swiotlb_init_with_default_size(size_t de
+ void __init
+ swiotlb_init(void)
+ {
+-      long ram_end;
+-      size_t defsz = 64 * (1 << 20); /* 64MB default size */
++      unsigned long ram_end;
++      size_t defsz = 64 << 20; /* 64MB default size */
+       if (swiotlb_force == 1) {
+               swiotlb = 1;
+@@ -234,8 +234,12 @@ swiotlb_init(void)
+                  is_initial_xendomain()) {
+               /* Domain 0 always has a swiotlb. */
+               ram_end = HYPERVISOR_memory_op(XENMEM_maximum_ram_page, NULL);
+-              if (ram_end <= 0x7ffff)
+-                      defsz = 2 * (1 << 20); /* 2MB on <2GB on systems. */
++              if (ram_end <= 0x1ffff)
++                      defsz = 2 << 20; /* 2MB on <512MB systems. */
++              else if (ram_end <= 0x3ffff)
++                      defsz = 4 << 20; /* 4MB on <1GB systems. */
++              else if (ram_end <= 0x7ffff)
++                      defsz = 8 << 20; /* 8MB on <2GB systems. */
+               swiotlb = 1;
+       }