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] [linux-2.6.18-xen] Revert xen-unstable 12513 (changes to

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [linux-2.6.18-xen] Revert xen-unstable 12513 (changes to xen devmem for ia64).
From: "Xen patchbot-linux-2.6.18-xen" <patchbot-linux-2.6.18-xen@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 27 Jul 2007 02:31:18 -0700
Delivery-date: Fri, 27 Jul 2007 02:29:23 -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 kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1184338990 -3600
# Node ID cc33c63a5afed6d76323f85a4801ae481a1d5e13
# Parent  e9dea8b7fde7851b6c8b14ba01e6eb2036ff8f0b
Revert xen-unstable 12513 (changes to xen devmem for ia64).
Signed-off-by: Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>
Signed-off-by: Jun Kamada <kama@xxxxxxxxxxxxxx>
---
 drivers/xen/char/mem.c               |   31 +++++++++----------------------
 include/asm-i386/mach-xen/asm/io.h   |    3 +--
 include/asm-powerpc/io.h             |    2 --
 include/asm-x86_64/mach-xen/asm/io.h |    3 +--
 4 files changed, 11 insertions(+), 28 deletions(-)

diff -r e9dea8b7fde7 -r cc33c63a5afe drivers/xen/char/mem.c
--- a/drivers/xen/char/mem.c    Fri Jul 13 13:57:42 2007 +0100
+++ b/drivers/xen/char/mem.c    Fri Jul 13 16:03:10 2007 +0100
@@ -26,12 +26,13 @@
 #include <asm/io.h>
 #include <asm/hypervisor.h>
 
-#ifndef ARCH_HAS_VALID_PHYS_ADDR_RANGE
-static inline int valid_phys_addr_range(unsigned long addr, size_t count)
+static inline int uncached_access(struct file *file)
 {
-       return 1;
+       if (file->f_flags & O_SYNC)
+               return 1;
+       /* Xen sets correct MTRR type on non-RAM for us. */
+       return 0;
 }
-#endif
 
 /*
  * This funcion reads the *physical* memory. The f_pos points directly to the 
@@ -44,9 +45,6 @@ static ssize_t read_mem(struct file * fi
        ssize_t read = 0, sz;
        void __iomem *v;
 
-       if (!valid_phys_addr_range(p, count))
-               return -EFAULT;
-
        while (count > 0) {
                /*
                 * Handle first page in case it's not aligned
@@ -58,7 +56,7 @@ static ssize_t read_mem(struct file * fi
 
                sz = min_t(unsigned long, sz, count);
 
-               v = xen_xlate_dev_mem_ptr(p, sz);
+               v = ioremap(p, sz);
                if (IS_ERR(v) || v == NULL) {
                        /*
                         * Some programs (e.g., dmidecode) groove off into
@@ -75,7 +73,7 @@ static ssize_t read_mem(struct file * fi
                }
 
                ignored = copy_to_user(buf, v, sz);
-               xen_xlate_dev_mem_ptr_unmap(v);
+               iounmap(v);
                if (ignored)
                        return -EFAULT;
                buf += sz;
@@ -95,9 +93,6 @@ static ssize_t write_mem(struct file * f
        ssize_t written = 0, sz;
        void __iomem *v;
 
-       if (!valid_phys_addr_range(p, count))
-               return -EFAULT;
-
        while (count > 0) {
                /*
                 * Handle first page in case it's not aligned
@@ -109,7 +104,7 @@ static ssize_t write_mem(struct file * f
 
                sz = min_t(unsigned long, sz, count);
 
-               v = xen_xlate_dev_mem_ptr(p, sz);
+               v = ioremap(p, sz);
                if (v == NULL)
                        break;
                if (IS_ERR(v)) {
@@ -119,7 +114,7 @@ static ssize_t write_mem(struct file * f
                }
 
                ignored = copy_from_user(v, buf, sz);
-               xen_xlate_dev_mem_ptr_unmap(v);
+               iounmap(v);
                if (ignored) {
                        written += sz - ignored;
                        if (written)
@@ -137,14 +132,6 @@ static ssize_t write_mem(struct file * f
 }
 
 #ifndef ARCH_HAS_DEV_MEM_MMAP_MEM
-static inline int uncached_access(struct file *file)
-{
-       if (file->f_flags & O_SYNC)
-               return 1;
-       /* Xen sets correct MTRR type on non-RAM for us. */
-       return 0;
-}
-
 static int xen_mmap_mem(struct file * file, struct vm_area_struct * vma)
 {
        size_t size = vma->vm_end - vma->vm_start;
diff -r e9dea8b7fde7 -r cc33c63a5afe include/asm-i386/mach-xen/asm/io.h
--- a/include/asm-i386/mach-xen/asm/io.h        Fri Jul 13 13:57:42 2007 +0100
+++ b/include/asm-i386/mach-xen/asm/io.h        Fri Jul 13 16:03:10 2007 +0100
@@ -53,8 +53,7 @@
  * Convert a physical pointer to a virtual kernel pointer for /dev/mem
  * access
  */
-#define xen_xlate_dev_mem_ptr(p, sz)   ioremap(p, sz)
-#define xen_xlate_dev_mem_ptr_unmap(p) iounmap(p)
+#define xen_xlate_dev_mem_ptr(p)       __va(p)
 
 /*
  * Convert a virtual cached pointer to an uncached pointer
diff -r e9dea8b7fde7 -r cc33c63a5afe include/asm-powerpc/io.h
--- a/include/asm-powerpc/io.h  Fri Jul 13 13:57:42 2007 +0100
+++ b/include/asm-powerpc/io.h  Fri Jul 13 16:03:10 2007 +0100
@@ -456,9 +456,7 @@ out:
  * access
  */
 #define xlate_dev_mem_ptr(p)   __va(p)
-
 #define xen_xlate_dev_mem_ptr(p,sz)    xlate_dev_mem_ptr(p)
-#define xen_xlate_dev_mem_ptr_unmap(p)
 
 /*
  * Convert a virtual cached pointer to an uncached pointer
diff -r e9dea8b7fde7 -r cc33c63a5afe include/asm-x86_64/mach-xen/asm/io.h
--- a/include/asm-x86_64/mach-xen/asm/io.h      Fri Jul 13 13:57:42 2007 +0100
+++ b/include/asm-x86_64/mach-xen/asm/io.h      Fri Jul 13 16:03:10 2007 +0100
@@ -315,8 +315,7 @@ extern int iommu_bio_merge;
  * Convert a physical pointer to a virtual kernel pointer for /dev/mem
  * access
  */
-#define xen_xlate_dev_mem_ptr(p, sz)   ioremap(p, sz)
-#define xen_xlate_dev_mem_ptr_unmap(p) iounmap(p)
+#define xen_xlate_dev_mem_ptr(p)       __va(p)
 
 /*
  * Convert a virtual cached pointer to an uncached pointer

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [linux-2.6.18-xen] Revert xen-unstable 12513 (changes to xen devmem for ia64)., Xen patchbot-linux-2.6.18-xen <=