patch-2.3.40 linux/mm/highmem.c

Next file: linux/mm/slab.c
Previous file: linux/mm/filemap.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.39/linux/mm/highmem.c linux/mm/highmem.c
@@ -128,7 +128,7 @@
 	flush_tlb_all();
 }
 
-static unsigned long map_new_virtual(struct page *page)
+static inline unsigned long map_new_virtual(struct page *page)
 {
 	unsigned long vaddr;
 	int count;
@@ -170,12 +170,6 @@
 	}
 	vaddr = PKMAP_ADDR(last_pkmap_nr);
 	pkmap_page_table[last_pkmap_nr] = mk_pte(page, kmap_prot);
-	/*
-	 * Subtle! For some reason if we dont do this TLB flush then
-	 * we get data corruption and weird behavior in dbench runs.
-	 * But invlpg this should not be necessery ... Any ideas?
-	 */
-	__flush_tlb_one(vaddr);
 
 	pkmap_count[last_pkmap_nr] = 1;
 	page->virtual = vaddr;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)