search for: l2_pgentry_t

Displaying 14 results from an estimated 14 matches for "l2_pgentry_t".

Did you mean: l1_pgentry_t
2005 Mar 14
4
[patch/unstable] page table cleanups
....c 2005-03-14 12:34:26.000000000 +0100 @@ -532,13 +532,15 @@ static void shadow_map_l1_into_current_l { struct exec_domain *ed = current; struct domain *d = ed->domain; - unsigned long *gpl1e, *spl1e, gl2e, sl2e, gl1pfn, sl1mfn, sl1ss; + l1_pgentry_t *gpl1e, *spl1e; + l2_pgentry_t gl2e, sl2e; + unsigned long gl1pfn, sl1mfn, sl1ss; struct pfn_info *sl1mfn_info; int i; __guest_get_l2e(ed, va, &gl2e); - gl1pfn = gl2e >> PAGE_SHIFT; + gl1pfn = l2_pgentry_val(gl2e) >> PAGE_SHIFT; sl1ss = __shadow_status(d, g...
2007 Feb 14
4
[PATCH 3/12] Provide basic Xen PM infrastructure
...YPERVISOR_NOCACHE = __PAGE_HYPERVISOR_NOCACHE; static unsigned long mpt_size; +int nx_enabled = 0; struct page_info *alloc_xen_pagetable(void) { @@ -132,7 +133,7 @@ void __init setup_idle_pagetable(void) __PAGE_HYPERVISOR)); } -void __init zap_low_mappings(l2_pgentry_t *base) +void zap_low_mappings(l2_pgentry_t *base) { int i; u32 addr; @@ -146,6 +147,15 @@ void __init zap_low_mappings(l2_pgentry_ continue; l2e_write(&base[i], l2e_empty()); } + + flush_tlb_all_pge(); +} + +void init_low_mappings(void) +{ + memcpy(id...
2011 Mar 09
0
[PATCH 1/5] x86: don''t BUG() post-boot in alloc_xen_pagetable()
...ned l if ( !(l4e_get_flags(*pl4e) & _PAGE_PRESENT) ) { l3_pgentry_t *pl3e = alloc_xen_pagetable(); + + if ( !pl3e ) + return NULL; clear_page(pl3e); l4e_write(pl4e, l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR)); } @@ -112,9 +116,15 @@ l2_pgentry_t *virt_to_xen_l2e(unsigned l l3_pgentry_t *pl3e; pl3e = virt_to_xen_l3e(v); + if ( !pl3e ) + return NULL; + if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) ) { l2_pgentry_t *pl2e = alloc_xen_pagetable(); + + if ( !pl2e ) + return NULL;...
2013 Oct 10
10
[PATCH 0/4] x86: XSA-67 follow-up
1: correct LDT checks 2: add address validity check to guest_map_l1e() 3: use {rd,wr}{fs,gs}base when available 4: check for canonical address before doing page walks Signed-off-by: Jan Beulich <jbeulich@suse.com>
2006 Aug 31
5
x86-64''s paging_init()
While adding code to create the compatibility p2m table mappings it seemed to me that the creation of the native ones is restricted to memory below the 512G boundary - otherwise, additional L2 tables would need to be allocated (currently other memory following the one L2 page getting allocated would be blindly overwritten). While I realize that machines this big aren''t likely to be
2012 Mar 01
14
[PATCH 0 of 3] RFC Paging support for AMD NPT V2
There has been some progress, but still no joy. Definitely not intended for inclusion at this point. Tim, Wei, I added a Xen command line toggle to disable IOMMU and P2M table sharing. Tim, I verified that changes to p2m-pt.c don''t break shadow mode (64bit hypervisor and Win 7 guest). Hongkaixing, I incorporated your suggestion in patch 2, so I should add your Signed-off-by eventually.
2005 Sep 05
0
[PATCH][4/6] Add to virtual device operations
...able + * map guest virtual address <--> hypervisor virtual address + * the hypervisor virtual address should below HYPERVISOR_VIRT_START, + * so that share page can be treated as a guest page + */ +int map_param_share_page(unsigned long gva, unsigned long hva){ + + unsigned long mfn; + l2_pgentry_t *mpl2e; /* monitor page table l2 */ + l1_pgentry_t *mpl1e; /* monitor page table l1 */ + struct pfn_info *l1_mfn_info; + unsigned long l1_mfn; + struct vcpu* v = current; + struct domain *d = v->domain; + + mfn = __gpfn_to_mfn(d, gva >> PAGE_SHIFT); + mpl2e = current-&...
2008 Jul 24
2
[RFC] i386 highmem assist hypercalls
..._page(const void *va) { unsigned int idx; struct vcpu *v; @@ -238,7 +238,7 @@ void *map_domain_page_global(unsigned lo return (void *)va; } -void unmap_domain_page_global(void *va) +void unmap_domain_page_global(const void *va) { unsigned long __va = (unsigned long)va; l2_pgentry_t *pl2e; Index: 2008-07-21/xen/arch/x86/x86_64/compat/mm.c =================================================================== --- 2008-07-21.orig/xen/arch/x86/x86_64/compat/mm.c 2008-06-16 10:43:34.000000000 +0200 +++ 2008-07-21/xen/arch/x86/x86_64/compat/mm.c 2008-07-21 08:36:26.000000000 +0200 @@...
2005 May 31
0
[PATCH] Store page and evtchn in start_info_t
...unsigned int control_evtchn, unsigned long flags, - unsigned int vcpus) + unsigned int vcpus, + unsigned int store_evtchn, unsigned long *store_mfn) { l1_pgentry_t *vl1tab=NULL, *vl1e=NULL; l2_pgentry_t *vl2tab=NULL, *vl2e=NULL; @@ -108,7 +109,8 @@ { vpt_end = vpt_start + (nr_pt_pages * PAGE_SIZE); vstartinfo_start = vpt_end; - vstartinfo_end = vstartinfo_start + PAGE_SIZE; + /* Place store shared page after startinfo. */ + vstartinfo_end =...
2008 Oct 17
6
[PATCH, RFC] i386: highmem access assistance hypercalls
..._page(const void *va) { unsigned int idx; struct vcpu *v; @@ -241,7 +241,7 @@ void *map_domain_page_global(unsigned lo return (void *)va; } -void unmap_domain_page_global(void *va) +void unmap_domain_page_global(const void *va) { unsigned long __va = (unsigned long)va; l2_pgentry_t *pl2e; Index: 2008-09-19/xen/arch/x86/x86_64/compat/mm.c =================================================================== --- 2008-09-19.orig/xen/arch/x86/x86_64/compat/mm.c 2008-09-15 11:25:43.000000000 +0200 +++ 2008-09-19/xen/arch/x86/x86_64/compat/mm.c 2008-09-19 14:00:01.000000000 +0200 @@...
2013 Dec 06
36
[V6 PATCH 0/7]: PVH dom0....
Hi, V6: The only change from V5 is in patch #6: - changed comment to reflect autoxlate - removed a redundant ASSERT - reworked logic a bit so that get_page_from_gfn() is called with NULL for p2m type as before. arm has ASSERT wanting it to be NULL. Tim: patch 4 needs your approval. Daniel: patch 5 needs your approval. These patches implement PVH dom0. Patches 1 and 2
2012 Aug 10
18
[PATCH v2 0/5] ARM hypercall ABI: 64 bit ready
Hi all, this patch series makes the necessary changes to make sure that the current ARM hypercall ABI can be used as-is on 64 bit ARM platforms: - it defines xen_ulong_t as uint64_t on ARM; - it introduces a new macro to handle guest pointers, called XEN_GUEST_HANDLE_PARAM (that has size 4 bytes on aarch and is going to have size 8 bytes on aarch64); - it replaces all the occurrences of
2012 Aug 16
27
[PATCH v3 0/6] ARM hypercall ABI: 64 bit ready
Hi all, this patch series makes the necessary changes to make sure that the current ARM hypercall ABI can be used as-is on 64 bit ARM platforms: - it defines xen_ulong_t as uint64_t on ARM; - it introduces a new macro to handle guest pointers, called XEN_GUEST_HANDLE_PARAM (that has size 4 bytes on aarch and is going to have size 8 bytes on aarch64); - it replaces all the occurrences of
2013 Sep 23
57
[PATCH RFC v13 00/20] Introduce PVH domU support
This patch series is a reworking of a series developed by Mukesh Rathor at Oracle. The entirety of the design and development was done by him; I have only reworked, reorganized, and simplified things in a way that I think makes more sense. The vast majority of the credit for this effort therefore goes to him. This version is labelled v13 because it is based on his most recent series, v11.