Displaying 7 results from an estimated 7 matches for "ptep_establish".
2007 Apr 18
1
[PATCH 6/9] 00mm9 optimize ptep establish for pae.patch
The ptep_establish macro is only used on user-level PTEs, for P->P mapping
changes.  Since these always happen under protection of the pagetable lock, the
strong synchronization of a 64-bit cmpxchg is not needed, in fact, not
even a lock prefix needs to be used.  We can simply instead clear the P-bit,
followed by...
2007 Apr 18
0
[PATCH 7/9] 00mma remove set pte atomic.patch
Now that ptep_establish has a definition in PAE i386 3-level paging code,
the only paging model which is insane enough to have multi-word hardware
PTEs which are not efficient to set atomically, we can remove the ghost
of set_pte_atomic from other architectures which falesly duplicated it,
and remove all knowledge of it f...
2007 Apr 18
2
Time to post some patches?
Looks to me like the first series of patches should be OK to post now.  
I propose that:
    001-apply-to-page-range.patch
    001a-reboot-use-struct.patch
    002-sync-bitops.patch
    003-remove-ring0-assumptions.patch
    004-abstract-asm.patch
    005-cpuid-cleanup.patch
    unfix-fixmap.patch
    fixmap-bootparam.patch
    remove-read-hazard-from-cow.patch
    pte-clear-not-present.patch
   
2007 Apr 18
0
[patch 6/9] Guest page hinting: writable page table entries.
...try);
 		lazy_mmu_prot_update(entry);
@@ -1607,6 +1608,7 @@ gotten:
 		flush_cache_page(vma, address, pte_pfn(orig_pte));
 		entry = mk_pte(new_page, vma->vm_page_prot);
 		entry = maybe_mkwrite(pte_mkdirty(entry), vma);
+		page_check_writable(new_page, entry);
 		lazy_mmu_prot_update(entry);
 		ptep_establish(vma, address, page_table, entry);
 		update_mmu_cache(vma, address, entry);
@@ -2055,6 +2057,7 @@ static int do_swap_page(struct mm_struct
 	}
 
 	flush_icache_page(vma, page);
+	page_check_writable(page, pte);
 	set_pte_at(mm, address, page_table, pte);
 	page_add_anon_rmap(page, vma, address);...
2007 Apr 18
0
[patch 6/9] Guest page hinting: writable page table entries.
...try);
 		lazy_mmu_prot_update(entry);
@@ -1607,6 +1608,7 @@ gotten:
 		flush_cache_page(vma, address, pte_pfn(orig_pte));
 		entry = mk_pte(new_page, vma->vm_page_prot);
 		entry = maybe_mkwrite(pte_mkdirty(entry), vma);
+		page_check_writable(new_page, entry);
 		lazy_mmu_prot_update(entry);
 		ptep_establish(vma, address, page_table, entry);
 		update_mmu_cache(vma, address, entry);
@@ -2055,6 +2057,7 @@ static int do_swap_page(struct mm_struct
 	}
 
 	flush_icache_page(vma, page);
+	page_check_writable(page, pte);
 	set_pte_at(mm, address, page_table, pte);
 	page_add_anon_rmap(page, vma, address);...
2007 Apr 18
0
[patch 9/9] Guest page hinting: full s390 support.
..._S390_PAGE_STATES_H */
diff -urpN linux-2.6/include/asm-s390/pgtable.h linux-2.6-patched/include/asm-s390/pgtable.h
--- linux-2.6/include/asm-s390/pgtable.h	2006-09-01 12:49:32.000000000 +0200
+++ linux-2.6-patched/include/asm-s390/pgtable.h	2006-09-01 12:50:25.000000000 +0200
@@ -604,14 +604,18 @@ ptep_establish(struct vm_area_struct *vm
  * should therefore only be called if it is not mapped in any
  * address space.
  */
-#define page_test_and_clear_dirty(_page)				  \
+#define page_test_dirty(_page)						  \
 ({									  \
 	struct page *__page = (_page);					  \
 	unsigned long __physpage = __pa((__pa...
2007 Apr 18
0
[patch 9/9] Guest page hinting: full s390 support.
..._S390_PAGE_STATES_H */
diff -urpN linux-2.6/include/asm-s390/pgtable.h linux-2.6-patched/include/asm-s390/pgtable.h
--- linux-2.6/include/asm-s390/pgtable.h	2006-09-01 12:49:32.000000000 +0200
+++ linux-2.6-patched/include/asm-s390/pgtable.h	2006-09-01 12:50:25.000000000 +0200
@@ -604,14 +604,18 @@ ptep_establish(struct vm_area_struct *vm
  * should therefore only be called if it is not mapped in any
  * address space.
  */
-#define page_test_and_clear_dirty(_page)				  \
+#define page_test_dirty(_page)						  \
 ({									  \
 	struct page *__page = (_page);					  \
 	unsigned long __physpage = __pa((__pa...