Index: kernel/generic/src/mm/as.c
===================================================================
--- kernel/generic/src/mm/as.c	(revision 454f1da77de2349b52f4bfe6ec9378202f3cdbda)
+++ kernel/generic/src/mm/as.c	(revision 7e2432b13acde1860669f1993aa5f12c4bbd72df)
@@ -614,6 +614,5 @@
  * or ENOMEM if there was a problem in allocating destination address space
  * area. ENOTSUP is returned if the address space area backend does not support
- * sharing or if the kernel detects an attempt to create an illegal address
- * alias.
+ * sharing.
  */
 int as_area_share(as_t *src_as, uintptr_t src_base, size_t acc_size,
@@ -667,18 +666,4 @@
 		return EPERM;
 	}
-
-#ifdef CONFIG_VIRT_IDX_DCACHE
-	if (!(dst_flags_mask & AS_AREA_EXEC)) {
-		if (PAGE_COLOR(src_area->base) != PAGE_COLOR(dst_base)) {
-			/*
-			 * Refuse to create an illegal address alias.
-			 */
-			mutex_unlock(&src_area->lock);
-			mutex_unlock(&src_as->lock);
-			interrupts_restore(ipl);
-			return ENOTSUP;
-		}
-	}
-#endif /* CONFIG_VIRT_IDX_DCACHE */
 
 	/*
@@ -902,7 +887,7 @@
 			 * ASID.
 			 */
-			 ASSERT(old_as->asid != ASID_INVALID);
-			 list_append(&old_as->inactive_as_with_asid_link,
-			     &inactive_as_with_asid_head);
+			ASSERT(old_as->asid != ASID_INVALID);
+			list_append(&old_as->inactive_as_with_asid_link,
+			    &inactive_as_with_asid_head);
 		}
 		mutex_unlock(&old_as->lock);
Index: kernel/generic/src/mm/backend_anon.c
===================================================================
--- kernel/generic/src/mm/backend_anon.c	(revision 454f1da77de2349b52f4bfe6ec9378202f3cdbda)
+++ kernel/generic/src/mm/backend_anon.c	(revision 7e2432b13acde1860669f1993aa5f12c4bbd72df)
@@ -158,19 +158,4 @@
 		panic("Could not insert used space.\n");
 		
-#ifdef CONFIG_VIRT_IDX_DCACHE
-	if (dirty && PAGE_COLOR(PA2KA(frame)) != PAGE_COLOR(addr)) {
-		/*
-		 * By writing to the frame using kernel virtual address,
-		 * we have created an illegal virtual alias. We now have to
-		 * invalidate cachelines belonging to addr on all processors
-		 * so that they will be reloaded with the new content on next
-		 * read.
-		 */
-		dcache_flush_frame(addr, frame);
-		dcache_shootdown_start(DCACHE_INVL_FRAME, PAGE_COLOR(addr), frame);
-		dcache_shootdown_finalize();
-	}
-#endif
-
 	return AS_PF_OK;
 }
@@ -241,3 +226,2 @@
 /** @}
  */
-
Index: kernel/generic/src/mm/backend_elf.c
===================================================================
--- kernel/generic/src/mm/backend_elf.c	(revision 454f1da77de2349b52f4bfe6ec9378202f3cdbda)
+++ kernel/generic/src/mm/backend_elf.c	(revision 7e2432b13acde1860669f1993aa5f12c4bbd72df)
@@ -209,19 +209,4 @@
 	if (!used_space_insert(area, ALIGN_DOWN(addr, PAGE_SIZE), 1))
 		panic("Could not insert used space.\n");
-
-#ifdef CONFIG_VIRT_IDX_DCACHE
-	if (dirty && PAGE_COLOR(PA2KA(frame)) != PAGE_COLOR(addr)) {
-		/*
-		 * By writing to the frame using kernel virtual address,
-		 * we have created an illegal virtual alias. We now have to
-		 * invalidate cachelines belonging to addr on all processors
-		 * so that they will be reloaded with the new content on next
-		 * read.
-		 */
-		dcache_flush_frame(addr, frame);
-		dcache_shootdown_start(DCACHE_INVL_FRAME, PAGE_COLOR(addr), frame);
-		dcache_shootdown_finalize();
-	}
-#endif
 
 	return AS_PF_OK;
@@ -356,3 +341,2 @@
 /** @}
  */
-
