diff mbox

[BUG] drm/i915 Screen corruption introduced by a00b10c360b35d6431a94cb

Message ID 95a30235b6074bd31fa18d72dbfab8ff.squirrel@webmail.greenhost.nl (mailing list archive)
State New, archived
Headers show

Commit Message

Indan Zupancic Feb. 20, 2011, 11:02 a.m. UTC
None
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 936ddd8..e3fc333 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -4925,7 +4925,7 @@  i915_gem_attach_phys_object(struct drm_device *dev,
 		if (IS_ERR(page))
 			return PTR_ERR(page);

-		src = kmap_atomic(obj_priv->pages[i]);
+		src = kmap_atomic(page);
 		dst = obj_priv->phys_obj->handle->vaddr + (i * PAGE_SIZE);
 		memcpy(dst, src, PAGE_SIZE);
 		kunmap_atomic(src);

diff --git a/arch/x86/mm/iomap_32.c b/arch/x86/mm/iomap_32.c
index 75a3d7f..e1cc56a 100644
--- a/arch/x86/mm/iomap_32.c
+++ b/arch/x86/mm/iomap_32.c
@@ -61,7 +61,8 @@  void *kmap_atomic_prot_pfn(unsigned long pfn, pgprot_t prot)

 	pagefault_disable();

-	type = kmap_atomic_idx_push();
+//	type = kmap_atomic_idx_push();
+	type = 0;
 	idx = type + KM_TYPE_NR * smp_processor_id();
 	vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
 	set_pte(kmap_pte - idx, pfn_pte(pfn, prot));
@@ -98,7 +99,8 @@  iounmap_atomic(void __iomem *kvaddr)
 	    vaddr <= __fix_to_virt(FIX_KMAP_BEGIN)) {
 		int idx, type;

-		type = kmap_atomic_idx_pop();
+//		type = kmap_atomic_idx_pop();
+		type = 0;
 		idx = type + KM_TYPE_NR * smp_processor_id();

 #ifdef CONFIG_DEBUG_HIGHMEM