Displaying 20 results from an estimated 50 matches for "pte_wrprotect".
2007 Apr 18
2
[PATCH 5/6] i386 virtualization - Make generic set wrprotect a macro
...08-15 13:54:42.000000000 -0700
> @@ -313,11 +313,12 @@
> #endif
>
> #ifndef __HAVE_ARCH_PTEP_SET_WRPROTECT
> -static inline void ptep_set_wrprotect(struct mm_struct *mm, unsigned long address, pte_t *ptep)
> -{
> - pte_t old_pte = *ptep;
> - set_pte_at(mm, address, ptep, pte_wrprotect(old_pte));
> -}
> +#define ptep_set_wrprotect(__mm, __address, __ptep) \
> +({ \
> + pte_t __old_pte = *(__ptep); \
> + set_pte_at((__mm), (__address), (__ptep), \
> + pte_wrprotect(__old_pte)); \
> +})
> #endif
>
> #ifndef __HAVE_ARCH_PTE_SAME...
2007 Apr 18
2
[PATCH 5/6] i386 virtualization - Make generic set wrprotect a macro
...08-15 13:54:42.000000000 -0700
> @@ -313,11 +313,12 @@
> #endif
>
> #ifndef __HAVE_ARCH_PTEP_SET_WRPROTECT
> -static inline void ptep_set_wrprotect(struct mm_struct *mm, unsigned long address, pte_t *ptep)
> -{
> - pte_t old_pte = *ptep;
> - set_pte_at(mm, address, ptep, pte_wrprotect(old_pte));
> -}
> +#define ptep_set_wrprotect(__mm, __address, __ptep) \
> +({ \
> + pte_t __old_pte = *(__ptep); \
> + set_pte_at((__mm), (__address), (__ptep), \
> + pte_wrprotect(__old_pte)); \
> +})
> #endif
>
> #ifndef __HAVE_ARCH_PTE_SAME...
2007 Apr 18
1
[PATCH 1/9] 00mm1 remove read hazard from cow.patch
...(+), 1 deletion(-)
===================================================================
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -466,7 +466,7 @@ copy_one_pte(struct mm_struct *dst_mm, s
*/
if (is_cow_mapping(vm_flags)) {
ptep_set_wrprotect(src_mm, addr, src_pte);
- pte = *src_pte;
+ pte = pte_wrprotect(pte);
}
/*
2009 Sep 21
1
[PATCH 2/5] lguest: use set_pte/set_pmd uniformly for real page table entries
...+ set_pmd(spmd, __pmd(__pa(ptepage) | pmd_flags(gpmd)));
}
/*
@@ -447,7 +447,7 @@ bool demand_page(struct lg_cpu *cpu, uns
* we will come back here when a write does actually occur, so
* we can update the Guest's _PAGE_DIRTY flag.
*/
- native_set_pte(spte, gpte_to_spte(cpu, pte_wrprotect(gpte), 0));
+ set_pte(spte, gpte_to_spte(cpu, pte_wrprotect(gpte), 0));
/*
* Finally, we write the Guest PTE entry back: we've set the
@@ -528,7 +528,7 @@ static void release_pmd(pmd_t *spmd)
/* Now we can free the page of PTEs */
free_page((long)ptepage);
/* And zero out the P...
2009 Sep 21
1
[PATCH 2/5] lguest: use set_pte/set_pmd uniformly for real page table entries
...+ set_pmd(spmd, __pmd(__pa(ptepage) | pmd_flags(gpmd)));
}
/*
@@ -447,7 +447,7 @@ bool demand_page(struct lg_cpu *cpu, uns
* we will come back here when a write does actually occur, so
* we can update the Guest's _PAGE_DIRTY flag.
*/
- native_set_pte(spte, gpte_to_spte(cpu, pte_wrprotect(gpte), 0));
+ set_pte(spte, gpte_to_spte(cpu, pte_wrprotect(gpte), 0));
/*
* Finally, we write the Guest PTE entry back: we've set the
@@ -528,7 +528,7 @@ static void release_pmd(pmd_t *spmd)
/* Now we can free the page of PTEs */
free_page((long)ptepage);
/* And zero out the P...
2007 Apr 18
1
[PATCH 3/5] Make set_wrprotect() value safe
...gtable.h 2005-08-22 14:21:05.000000000 -0700
@@ -314,11 +314,11 @@ do { \
#ifndef __HAVE_ARCH_PTEP_SET_WRPROTECT
#define ptep_set_wrprotect(__mm, __address, __ptep) \
-({ \
+do { \
pte_t __old_pte = *(__ptep); \
set_pte_at((__mm), (__address), (__ptep), \
pte_wrprotect(__old_pte)); \
-})
+} while (0)
#endif
#ifndef __HAVE_ARCH_PTE_SAME
2007 Apr 18
1
[PATCH 3/5] Make set_wrprotect() value safe
...gtable.h 2005-08-22 14:21:05.000000000 -0700
@@ -314,11 +314,11 @@ do { \
#ifndef __HAVE_ARCH_PTEP_SET_WRPROTECT
#define ptep_set_wrprotect(__mm, __address, __ptep) \
-({ \
+do { \
pte_t __old_pte = *(__ptep); \
set_pte_at((__mm), (__address), (__ptep), \
pte_wrprotect(__old_pte)); \
-})
+} while (0)
#endif
#ifndef __HAVE_ARCH_PTE_SAME
2007 Apr 18
0
[PATCH 3/9] 00mm3 lazy mmu mode hooks.patch
...e();
pte_unmap_unlock(pte - 1, ptl);
return addr;
@@ -1109,6 +1113,7 @@ static int zeromap_pte_range(struct mm_s
pte = pte_alloc_map_lock(mm, pmd, addr, &ptl);
if (!pte)
return -ENOMEM;
+ arch_enter_lazy_mmu_mode();
do {
struct page *page = ZERO_PAGE(addr);
pte_t zero_pte = pte_wrprotect(mk_pte(page, prot));
@@ -1118,6 +1123,7 @@ static int zeromap_pte_range(struct mm_s
BUG_ON(!pte_none(*pte));
set_pte_at(mm, addr, pte, zero_pte);
} while (pte++, addr += PAGE_SIZE, addr != end);
+ arch_leave_lazy_mmu_mode();
pte_unmap_unlock(pte - 1, ptl);
return 0;
}
@@ -1275,11 +1281...
2020 Apr 13
2
Build regressions/improvements in v5.7-rc1
...asm/book3s/64/pgtable.h: error: redefinition of 'pte_user': => 581:20
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_write': => 416:19
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_wrprotect': => 623:21
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_young': => 485:19
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'ptep_get_and_clear': => 451:21
> + /kisskb/src/ar...
2020 Apr 13
2
Build regressions/improvements in v5.7-rc1
...asm/book3s/64/pgtable.h: error: redefinition of 'pte_user': => 581:20
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_write': => 416:19
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_wrprotect': => 623:21
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_young': => 485:19
> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'ptep_get_and_clear': => 451:21
> + /kisskb/src/ar...
2020 Apr 14
0
Build regressions/improvements in v5.7-rc1
...3s/64/pgtable.h: error: redefinition of 'pte_user': => 581:20
>> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_write': => 416:19
>> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_wrprotect': => 623:21
>> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_young': => 485:19
>> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'ptep_get_and_clear': => 451:21
>> + /k...
2020 Apr 14
1
Build regressions/improvements in v5.7-rc1
...ble.h: error: redefinition of 'pte_user': => 581:20
> >> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_write': => 416:19
> >> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_wrprotect': => 623:21
> >> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'pte_young': => 485:19
> >> + /kisskb/src/arch/powerpc/include/asm/book3s/64/pgtable.h: error: redefinition of 'ptep_get_and_clear': => 451:21
>...
2006 Mar 14
12
[RFC] VMI for Xen?
I''m sure everyone has seen the drop of VMI patches for Linux at this
point, but just in case, the link is included below.
I''ve read this version of the VMI spec and have made my way through most
of the patches. While I wasn''t really that impressed with the first
spec wrt Xen, the second version seems to be much more palatable.
Specifically, the code inlining and
2007 Apr 18
15
[PATCH 0 of 13] Basic infrastructure patches for a paravirtualized kernel
[ REPOST: Apologies to anyone who has seen this before. It
didn't make it onto any of the lists it should have. -J ]
Hi Andrew,
This series of patches lays the basic ground work for the
paravirtualized kernel patches coming later on. I think this lot is
ready for the rough-and-tumble world of the -mm tree.
For the most part, these patches do nothing or very little. The
patches should
2007 Apr 18
15
[PATCH 0 of 13] Basic infrastructure patches for a paravirtualized kernel
[ REPOST: Apologies to anyone who has seen this before. It
didn't make it onto any of the lists it should have. -J ]
Hi Andrew,
This series of patches lays the basic ground work for the
paravirtualized kernel patches coming later on. I think this lot is
ready for the rough-and-tumble world of the -mm tree.
For the most part, these patches do nothing or very little. The
patches should
2006 Jul 25
18
[PATCH] turn off writable page tables
At OLS I gave a talk on some of the Xen scalability inhibitors, and one
of these was writable page tables. We went over why the feature does
not scale, but just as important, we found that the uniprocessor case
does not provide any advantage either. These tests were done on x86_64,
so I wanted to run the 1-way test on 32 bit to show the same problem.
So, I have run with writable PTs and
2007 Oct 04
1
[PATCH 0/5] Boot protocol changes
Hi guys
I gave these patches a try (on top of 2.6.23-rc9 plus the previously
submitted 2.6.24 patch set).
The last two seem to cause Badness on my system, whereby if I start a
guest (using the same bzImage as the host, as before) it seems to boot
OK, and the host system still superficially looks stable (my X session
is OK and I can interact with existing processes) but if I attempt to
launch any
2007 Oct 04
1
[PATCH 0/5] Boot protocol changes
Hi guys
I gave these patches a try (on top of 2.6.23-rc9 plus the previously
submitted 2.6.24 patch set).
The last two seem to cause Badness on my system, whereby if I start a
guest (using the same bzImage as the host, as before) it seems to boot
OK, and the host system still superficially looks stable (my X session
is OK and I can interact with existing processes) but if I attempt to
launch any
2007 Apr 18
33
[RFC PATCH 00/33] Xen i386 paravirtualization support
Unlike full virtualization in which the virtual machine provides
the same platform interface as running natively on the hardware,
paravirtualization requires modification to the guest operating system
to work with the platform interface provided by the hypervisor.
Xen was designed with performance in mind. Calls to the hypervisor
are minimized, batched if necessary, and non-critical codepaths
2007 Apr 18
20
[patch 00/20] XEN-paravirt: Xen guest implementation for paravirt_ops interface
This patch series implements the Linux Xen guest in terms of the
paravirt-ops interface. The features in implemented this patch series
are:
* domU only
* UP only (most code is SMP-safe, but there's no way to create a new vcpu)
* writable pagetables, with late pinning/early unpinning
(no shadow pagetable support)
* supports both PAE and non-PAE modes
* xen console
* virtual block