search for: unmap_domain_page

Displaying 20 results from an estimated 34 matches for "unmap_domain_page".

Did you mean: map_domain_page
2013 Dec 06
0
[Patch v2] xen/tmem: Fix uses of unmatched __map_domain_page()
__map_domain_page() *must* be matched with an unmap_domain_page(). These five static inline functions each map a page (or two), then throw away the context needed to unmap it. Each of the changes are limited to their respective functions. In two cases, this involved replacing a large amount of pointer arithmetic with memcpy() (all callers were relying on mem...
2008 Jul 24
2
[RFC] i386 highmem assist hypercalls
...signed long mfn) +{ + unsigned int cpu = smp_processor_id(); + void *ptr = (void *)fix_to_virt(FIX_PAE_HIGHMEM_0 + cpu); + + l1e_write(fix_pae_highmem_pl1e - cpu, + l1e_from_pfn(mfn, __PAGE_HYPERVISOR)); + flush_tlb_one_local(ptr); + return ptr; +} +static inline void fixunmap_domain_page(const void *ptr) +{ + unsigned int cpu = virt_to_fix((unsigned long)ptr) - FIX_PAE_HIGHMEM_0; + + l1e_write(fix_pae_highmem_pl1e - cpu, l1e_empty()); + this_cpu(make_cr3_timestamp) = this_cpu(tlbflush_time); +} +#else +#define fixmap_domain_page(mfn) mfn_to_virt(mfn) +#define fixunmap_doma...
2013 Jun 18
16
[PATCH] ARM: cache coherence problem in guestcopy.c
...atp to invoke the second hypercall with different parameters. 4) GVA of xatp is mapped again in the same VA of xen, and the cached data at step 2) (the first hypercall parameter) is loaded. The below patch prevents the above problem. I''m wondering, as a better solution, that does unmap_domain_page should invalidate the cache before unmap the page? Signed-off-by: Jaeyong Yoo <jaeyong.yoo@samsung.com> --- xen/arch/arm/guestcopy.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c index d146cd6..9c4a7e4 100644 --- a/xen/arch/a...
2013 Dec 04
5
[PATCH] coverity: Store the modelling file in the source tree.
...s. + */ +void *map_domain_page(unsigned long mfn) +{ + void *p = __coverity_alloc__(PAGE_SIZE); + + assert(p != NULL); + assert((p & ~PAGE_MASK) == 0); + + return p; +} + +void *__map_domain_page(struct page_info *page) +{ + return map_domain_page(page_to_mfn(page)); +} + +/* + * unmap_domain_page() will correctly unmap the page, given any virtual + * address inside the page. + */ +void unmap_domain_page(const void *va) +{ + const void *v = (const void*)((unsigned long)va & PAGE_MASK); + + __coverity_free__(v); +} + +/* + * Local variables: + * mode: C + * c-file-style: "BSD&q...
2008 Oct 17
6
[PATCH, RFC] i386: highmem access assistance hypercalls
...signed long mfn) +{ + unsigned int cpu = smp_processor_id(); + void *ptr = (void *)fix_to_virt(FIX_PAE_HIGHMEM_0 + cpu); + + l1e_write(fix_pae_highmem_pl1e - cpu, + l1e_from_pfn(mfn, __PAGE_HYPERVISOR)); + flush_tlb_one_local(ptr); + return ptr; +} +static inline void fixunmap_domain_page(const void *ptr) +{ + unsigned int cpu = virt_to_fix((unsigned long)ptr) - FIX_PAE_HIGHMEM_0; + + l1e_write(fix_pae_highmem_pl1e - cpu, l1e_empty()); + this_cpu(make_cr3_timestamp) = this_cpu(tlbflush_time); +} +#else +#define fixmap_domain_page(mfn) mfn_to_virt(mfn) +#define fixunmap_doma...
2011 Sep 08
5
[PATCH 0 of 2] v2: memshare/xenpaging/xen-access fixes for xen-unstable
The following two patches allow the parallel use of memsharing, xenpaging and xen-access by using an independent ring buffer for each feature. Please review. v2: - update mem_event_check_ring arguments, check domain rather than domain_id - check ring_full first because its value was just evaluated - check if ring buffer is initialized before calling mem_access_domctl/mem_paging_domctl
2013 Nov 06
0
[PATCH v5 5/6] xen/arm: Implement hypercall for dirty page tracing
...rch.dirty.lock); + mark_dirty_bitmap(d, addr); + spin_unlock(&d->arch.dirty.lock); + } + + return 1; +} + void get_gma_start_end(struct domain *d, paddr_t *start, paddr_t *end) { if ( start ) @@ -1440,6 +1493,54 @@ void cleanup_vlpt(struct domain *d) unmap_domain_page_global(d->arch.dirty.second_lvl[0]); unmap_domain_page_global(d->arch.dirty.second_lvl[1]); } + +int prepare_bitmap(struct domain *d) +{ + paddr_t gma_start = 0; + paddr_t gma_end = 0; + int nr_bytes; + int nr_pages; + int i; + + get_gma_start_end(d, &gm...
2007 May 14
0
[PATCH] x86: ptwr adjustments
...hg). */ - pl1e = map_domain_page(page_to_mfn(page)); + pl1e = map_domain_page(mfn); pl1e = (l1_pgentry_t *)((unsigned long)pl1e + (addr & ~PAGE_MASK)); if ( do_cmpxchg ) { @@ -3285,21 +3286,21 @@ static int ptwr_emulated_update( if ( !okay ) { unmap_domain_page(pl1e); - put_page_from_l1e(gl1e_to_ml1e(d, nl1e), d); + put_page_from_l1e(nl1e, d); return X86EMUL_CMPXCHG_FAILED; } } else { ol1e = *pl1e; - if ( !UPDATE_ENTRY(l1, pl1e, ol1e, nl1e, page_to_mfn(page), v) ) + if ( !UP...
2013 Apr 30
4
Data Abort while in booting when using Julien's new patches on Arndale Board
Hello, I am trying to boot Arndale board with Julien''s new XenARM patch series. But I have got "Data Abort" while in booting. My environment is: - Arndale Board - Xen-4.3-unstable from branch "arm" in git://xenbits.xen.org/people/julieng/xen-unstable.git - Dom0 Kernel from branch "dev-arndale-dom0-3.9" in
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
2005 Jun 30
0
[PATCH][10/10] Use copy_from_user when accessing guest_pt
...; + // This could probably be smarter, but this is sufficent for // our current needs. // - entries_match = !l1e_has_changed(guest_pt[index], snapshot[index], + entries_match = !l1e_has_changed(gpte, snapshot[index], PAGE_FLAG_MASK); unmap_domain_page(snapshot); _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2005 Sep 05
0
[PATCH][4/6] Add to virtual device operations
...__PAGE_HYPERVISOR); + printk("map_param_share_page: set l2 page table entry\n"); + + /* set l1 page table */ + mpl1e = (l1_pgentry_t *)map_domain_page(l1_mfn); + memset(mpl1e, 0, PAGE_SIZE); + mpl1e[l1_table_offset(hva)] = + l1e_from_pfn(mfn, __PAGE_HYPERVISOR); + unmap_domain_page(mpl1e); + printk("map_param_share_page: set l1 page table entry\n"); + + return 0; +} + +asmlinkage unsigned long do_virtual_device_op(unsigned long op, + unsigned long arg1, + unsigned arg2) +...
2012 Feb 17
1
[PATCH] x86/mm: Make sure the event channel is released accurately
...+0000 +++ b/xen/arch/x86/mm/mem_event.c Fri Feb 17 15:14:25 2012 +0800 @@ -243,6 +243,9 @@ return -EBUSY; } + /* Free domU''s event channel and leave the other one unbound */ + free_xen_event_channel(d->vcpu[0], med->xen_port); + unmap_domain_page(med->ring_page); med->ring_page = NULL; --===============7093614109929523318== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing l...
2011 Mar 25
2
[RFC PATCH 2/3] AMD IOMMU: Implement p2m sharing
-- Advanced Micro Devices GmbH Sitz: Dornach, Gemeinde Aschheim, Landkreis München Registergericht München, HRB Nr. 43632 WEEE-Reg-Nr: DE 12919551 Geschäftsführer: Alberto Bozzo, Andrew Bowd _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2005 Nov 15
3
pte query?
hi, what''s the best way (if at all) to iterate through all of a domain''s page tables within xen 2.0.6? i need to find all references to a specific pte value (which is a given). essentially, a reverse page-table lookup. i''m hesitant to switch to 3.0, but if it''s easier to do what i want, just let me know. thanks, -A. -- Aaron Marks Distributed Systems Lab
2011 May 06
14
[PATCH 0 of 4] Use superpages on restore/migrate
This patch series restores the use of superpages when restoring or migrating a VM, while retaining efficient batching of 4k pages when superpages are not appropriate or available. Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2011 Nov 29
10
[PATCH 0 of 2] Fix correctness race in xc_mem_paging_prep
ging_prep ensures that an mfn is backing the paged-out gfn, and transitions to the next state in the paging state machine for this page. Foreign mappings of the gfn will now succeed. This is the key idea, as it allows the pager to now map the gfn and fill in its contents. Unfortunately, it also allows any other foreign mapper to map the gfn and read its contents. This is particularly dangerous
2009 Aug 06
2
[PATCH] hvm emul: fix cmpxchg emulation to use an atomic operation
...+ } + + return map; +} + +/* Tidy up after the emulated write: undo the mapping */ +static void emulate_unmap_dest( + struct vcpu *v, + void *addr, + u32 bytes, + unsigned long vaddr) +{ + if ( likely(((vaddr + bytes - 1) & PAGE_MASK) == (vaddr & PAGE_MASK)) ) + unmap_domain_page(addr); + else + { + unsigned long offset; + /* Undo the hacky two-frame contiguous map. */ + ASSERT(((unsigned long) addr & PAGE_MASK) == LDT_VIRT_START(v)); + offset = l1_linear_offset((unsigned long) addr); + l1e_write(&__linear_l1_table[offset], l...
2007 Aug 09
0
[PATCH] x86/hvm: miscellaneous CPUID handling changes
...ecx, &edx); - eax &= NUM_CORES_RESET_MASK; - } - else if ( input == 0x40000003 ) + if ( input == 0x40000003 ) { /* * NB. Unsupported interface for private use of VMXASSIST only. @@ -1360,37 +1354,52 @@ static void vmx_do_cpuid(struct cpu_user unmap_domain_page(p); gdprintk(XENLOG_INFO, "Output value is 0x%"PRIx64".\n", value); - ecx = (u32)value; - edx = (u32)(value >> 32); - } else { - hvm_cpuid(input, &eax, &ebx, &ecx, &edx); + regs->ecx = (u32)value; + regs-&...
2012 Jun 08
18
[PATCH 0 of 4 RFC] Populate-on-demand: Check pages being returned by the balloon driver
Populate-on-demand: Check pages being returned by the balloon driver This patch series is the second result of my work last summer on decreasing fragmentation of superpages in a guests'' p2m when using populate-on-demand. This patch series is against 4.1; I''m posting it to get feedback on the viability of getting a ported version of this patch into 4.2. As with the previous