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-ia64-devel

[Xen-ia64-devel] [RFC] Enable dom0 to start X

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [RFC] Enable dom0 to start X
From: Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>
Date: Mon, 24 Jul 2006 21:22:05 +0900
Delivery-date: Mon, 24 Jul 2006 05:21:44 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi, all

I'm debugging Xwindow system of dom0.

Now Xwindow system of dom0 cannot start.
The below is error messages of X.
===================================================
(II) Setting vga for screen 0.
(==) ATI(0): Chipset:  "ati".
(**) ATI(0): Depth 24, (--) framebuffer bpp 32
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Loading /usr/X11R6/lib/modules/libint10.a
(II) Module int10: vendor="X.Org Foundation"
        compiled for 6.8.2, module version = 1.0.0
        ABI class: X.Org Video Driver, version 0.7

Fatal server error:
xf86MapVidMem: Could not mmap framebuffer (0x000a0000,0x20000) (Invalid 
argument)


Please consult the The X.Org Foundation support 
         at http://wiki.X.Org
 for help. 
Please also check the log file at "/var/log/Xorg.0.log" for additional 
information.
===================================================

This issue is caused by retrun EIVAL from mmap_mem()@driver/char/mem.c

Because 0xA0000 is not shown in memmap of Tiger4,
I undefined ARCH_HAS_VALID_PHYS_ADDR_RANGE 
so that valid_mmap_phys_addr_range() always return 1.

  90 #ifndef ARCH_HAS_VALID_PHYS_ADDR_RANGE
  91 static inline int valid_phys_addr_range(unsigned long addr, size_t *count)
  92 {
  93         unsigned long end_mem;
  94 
  95         end_mem = __pa(high_memory);
  96         if (addr >= end_mem)
  97                 return 0;
  98 
  99         if (*count > end_mem - addr)
 100                 *count = end_mem - addr;
 101 
 102         return 1;
 103 }
 104 
 105 static inline int valid_mmap_phys_addr_range(unsigned long addr, size_t 
*size)
 106 {
 107         return 1;
 108 }
 109 #endif


diff -r b2abc70be89e linux-2.6-xen-sparse/include/asm-ia64/io.h
--- a/linux-2.6-xen-sparse/include/asm-ia64/io.h        Wed Jul 19 07:17:54 
2006 -0600
+++ b/linux-2.6-xen-sparse/include/asm-ia64/io.h        Mon Jul 24 19:17:09 
2006 +0900
@@ -89,7 +89,7 @@ phys_to_virt (unsigned long address)
        return (void *) (address + PAGE_OFFSET);
 }
 
-#define ARCH_HAS_VALID_PHYS_ADDR_RANGE
+//#define ARCH_HAS_VALID_PHYS_ADDR_RANGE
 extern int valid_phys_addr_range (unsigned long addr, size_t *count); /* efi.c 
*/
 extern int valid_mmap_phys_addr_range (unsigned long addr, size_t *count);


At the results, I could startx, but not completely.
I found X run while using 100% CPU with top command.
The following messages were shown at that time.

(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0
(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0
(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0
(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0
(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0
(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0
(XEN) lookup_domain_mpa: bad mpa 0xfbfd0738 (=> 0x20000000)
(XEN) lookup_domain_mpa: d 0xf000000004288080 id 0 current 0xf000000004260000 
id 0

I think this 0xf000000004288080 is I/O page to be used by X.
(this 0xf000000004288080 is also not shown in memmap of Tiger4)
The I/O page seem to be not allocated.
How/When should xen allocate this page?

What do you think about this issue?
Shouldn't we undefined ARCH_HAS_VALID_PHYS_ADDR_RANGE?
Please commets.

Best Regards,

Akio Takebe


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

<Prev in Thread] Current Thread [Next in Thread>