[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Re: pvops: i915 kms crashs with corrupt page table



On 02/25/2010 02:32 AM, Bastian Blank wrote:
On Thu, Feb 25, 2010 at 11:06:20AM +0100, Bastian Blank wrote:
On Wed, Feb 24, 2010 at 11:23:37AM -0800, Jeremy Fitzhardinge wrote:
On 02/24/2010 09:55 AM, Bastian Blank wrote:
I run a 2.6.32 dom0 kernel (the Debian distribution config). If I enable
KMS in the intel driver, Xorg crashs with corrupt page table.
Does this help?
No.
But it is something like that:

intel_i810_configure:
         pci_read_config_dword(intel_private.pcidev, I810_GMADDR,&temp);
         agp_bridge->gart_bus_addr = (temp&  PCI_BASE_ADDRESS_MEM_MASK);

agp_copy_info:
        info->aper_base = bridge->gart_bus_addr;

drm_agp_init:
        head->base = head->agp_info.aper_base;

        dev->agp = head

i915_gem_init_ringbuffer:
        ring->map.offset = dev->agp->base + obj_priv->gtt_offset;

This address is directly used to create a userspace mapping.

Does this help?

diff --git a/arch/x86/include/asm/pgtable_64.h 
b/arch/x86/include/asm/pgtable_64.h
index c57a301..4e46931 100644
--- a/arch/x86/include/asm/pgtable_64.h
+++ b/arch/x86/include/asm/pgtable_64.h
@@ -160,7 +160,7 @@ extern void cleanup_highmap(void);
 #define pgtable_cache_init()   do { } while (0)
 #define check_pgt_cache()      do { } while (0)

-#define PAGE_AGP    PAGE_KERNEL_NOCACHE
+#define PAGE_AGP    PAGE_KERNEL_IO_NOCACHE
 #define HAVE_PAGE_AGP 1

 /* fs/proc/kcore.c */

        J


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.