login
Header Space

 
 

[PATCH 12 of 31] x86/pgtable.h: demacro ptep_set_access_flags

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Ingo Molnar <mingo@...>
Cc: LKML <linux-kernel@...>, Ian Campbell <ijc@...>
Date: Monday, March 17, 2008 - 7:37 pm

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
---
 arch/x86/mm/pgtable.c     |   16 ++++++++++++++++
 include/asm-x86/pgtable.h |   13 +++----------
 2 files changed, 19 insertions(+), 10 deletions(-)

diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c
--- a/arch/x86/mm/pgtable.c
+++ b/arch/x86/mm/pgtable.c
@@ -1,5 +1,6 @@
 #include <linux/mm.h>
 #include <asm/pgalloc.h>
+#include <asm/pgtable.h>
 #include <asm/tlb.h>
 
 pte_t *pte_alloc_one_kernel(struct mm_struct *mm, unsigned long address)
@@ -246,3 +247,18 @@
 	free_page((unsigned long)pgd);
 }
 #endif
+
+int ptep_set_access_flags(struct vm_area_struct *vma,
+			  unsigned long address, pte_t *ptep,
+			  pte_t entry, int dirty)
+{
+	int changed = !pte_same(*ptep, entry);
+
+	if (changed && dirty) {
+		*ptep = entry;
+		pte_update_defer(vma->vm_mm, address, ptep);
+		flush_tlb_page(vma, address);
+	}
+
+	return changed;
+}
diff --git a/include/asm-x86/pgtable.h b/include/asm-x86/pgtable.h
--- a/include/asm-x86/pgtable.h
+++ b/include/asm-x86/pgtable.h
@@ -299,16 +299,9 @@
  * bit at the same time.
  */
 #define  __HAVE_ARCH_PTEP_SET_ACCESS_FLAGS
-#define ptep_set_access_flags(vma, address, ptep, entry, dirty)		\
-({									\
-	int __changed = !pte_same(*(ptep), entry);			\
-	if (__changed && dirty) {					\
-		*ptep = entry;						\
-		pte_update_defer((vma)->vm_mm, (address), (ptep));	\
-		flush_tlb_page(vma, address);				\
-	}								\
-	__changed;							\
-})
+extern int ptep_set_access_flags(struct vm_area_struct *vma,
+				 unsigned long address, pte_t *ptep,
+				 pte_t entry, int dirty);
 
 #define __HAVE_ARCH_PTEP_TEST_AND_CLEAR_YOUNG
 #define ptep_test_and_clear_young(vma, addr, ptep) ({			\


--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 13 of 31] x86/pgtable.h: demacro ptep_test_and_clear_..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 03 of 31] x86: convert pgalloc_64.h from macros to in..., Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 20 of 31] xen: unify pte operations on machine frames, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 01 of 31] xen: fix RMW when unmasking events, Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 31 of 31] xen: jump to iret fixup, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 05 of 31] x86: put paravirt stubs into common asm/pga..., Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 24 of 31] xen: add support for callbackops hypercall, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 28 of 31] xen: make sure retriggered events are set p..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 18 of 31] xen: unify pte operations, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 25 of 31] x86: only enable interrupts when kernel sta..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 09 of 31] x86: move all the pgd_list handling to one ..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 29 of 31] xen: short-cut for recursive event handling, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 22 of 31] x86: unify KERNEL_PGD_PTRS, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 10 of 31] x86: rename paravirt_alloc_pt etc after the..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 19 of 31] xen: use phys_addr_t when referring to phys..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 02 of 31] xen: fix UP setup of shared_info, Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 27 of 31] xen: implement a debug-interrupt handler, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 17 of 31] xen: make use of pte_t union, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 06 of 31] x86: move pte functions into common asm/pga..., Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 23 of 31] x86: unify pgd ctor/dtor, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 12 of 31] x86/pgtable.h: demacro ptep_set_access_flags, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 21 of 31] xen: make sure iret faults are trapped, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 14 of 31] x86/pgtable.h: demacro ptep_clear_flush_young, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 15 of 31] x86: demacro pgalloc paravirt stubs, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 04 of 31] x86: add common mm/pgtable.c, Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
[PATCH 08 of 31] x86: move pgalloc pud and pgd operations in..., Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 3:05 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 3:46 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 4:02 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 4:09 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 5:12 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 5:33 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 5:54 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 6:00 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 5:58 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 6:04 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 6:15 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 7:52 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Thu Mar 20, 4:24 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Fri Mar 21, 9:17 am)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Fri Mar 21, 10:35 am)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Fri Mar 21, 11:15 am)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Fri Mar 21, 11:25 am)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Fri Mar 21, 10:34 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ian Campbell, (Wed Mar 19, 5:22 am)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 11:11 am)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ingo Molnar, (Wed Mar 19, 3:07 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 3:19 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Ian Campbell, (Wed Mar 19, 12:50 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Wed Mar 19, 2:45 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Zachary Amsden, (Tue Mar 18, 5:33 pm)
Re: [PATCH 00 of 31] x86: unification and xen updates, Jeremy Fitzhardinge, (Tue Mar 18, 5:37 pm)
[PATCH 30 of 31] xen: no need for domU to worry about MCE/MCA, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 26 of 31] xen: support sysenter/sysexit if hypervisor..., Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 11 of 31] x86: add pud_alloc for 4-level pagetables, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 16 of 31] xen: use appropriate pte types, Jeremy Fitzhardinge, (Mon Mar 17, 7:37 pm)
[PATCH 07 of 31] x86: move pmd functions into common asm/pga..., Jeremy Fitzhardinge, (Mon Mar 17, 7:36 pm)
speck-geostationary