search for: ptep_establish

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...