search for: map_domain_page

Displaying 20 results from an estimated 36 matches for "map_domain_page".

2007 Jun 08
3
map_domain_page
Hi, Can anybody shed light on the Xen function map_domain_page (in xen/arch/x86/x86_32/domain_page.c)? What is it doing? Jinpeng Wei _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2008 Aug 21
2
doubt on releasing domain pages
...inquish_resources. This is failing to release pages from page_list for type PGT_l2_page_tables and crashing dom0. To be specific, while testing on mini-os i saw that when domain_relinquish_resources calls relinquish_memory for PGT_l2_page_tables, this eventually calls free_l2_table which fails at map_domain_page() by returning an invalid virtual address, due to which dom0 crashes immediately. When the same sequence of functions works perfectly fine during domU destruction, why not during shutdown. Am I missing anything important? Am using xen-3.3-unstable. Thanks in advance Regards, Sandesh \m/...
2006 Feb 27
0
RE: Re: Will map_domain_page return NULL when fails onx86_32?
>>>> Hi Keir, just a curious question, will map_domain_page >>> return NULL when >>>> fails on x86_32? If not, why? >>>> thanks >>> >>> I don''t expect that it should ever fail. It''s used for temporary >>> mappings (e.g., scope of a function) and so even though the mapping >>...
2013 Dec 04
5
[PATCH] coverity: Store the modelling file in the source tree.
...atically. The model file + * must be uploaded by an admin in the analysis. + */ + +/* Definitions */ +#define NULL (void *)0 +#define PAGE_SIZE 4096UL +#define PAGE_MASK (~(PAGE_SIZE-1)) + +#define assert(cond) /* empty */ +#define page_to_mfn(p) (unsigned long)(p) + +struct page_info {}; + +/* + * map_domain_page() takes an existing domain page and possibly maps it into + * the Xen pagetables, to allow for direct access. Model this as a memory + * allocation of exactly 1 page. + * + * map_domain_page() never fails (It will BUG() before returning NULL), and + * will only ever return page aligned addresses....
2013 Jun 18
16
[PATCH] ARM: cache coherence problem in guestcopy.c
...p 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...
2008 Jul 24
2
[RFC] i386 highmem assist hypercalls
...=========================== --- 2008-07-21.orig/xen/arch/x86/mm.c 2008-07-18 16:19:34.000000000 +0200 +++ 2008-07-21/xen/arch/x86/mm.c 2008-07-21 08:36:26.000000000 +0200 @@ -2218,6 +2218,29 @@ static inline cpumask_t vcpumask_to_pcpu return pmask; } +#ifdef __i386__ +static inline void *fixmap_domain_page(unsigned 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...
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
2007 May 14
0
[PATCH] x86: ptwr adjustments
...&& is_pv_32bit_domain(d) && (bytes == 4) && (addr & 4) && !do_cmpxchg && @@ -3270,7 +3271,7 @@ static int ptwr_emulated_update( adjust_guest_l1e(nl1e, d); /* Checked successfully: do the update (write or cmpxchg). */ - 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); -...
2012 Dec 10
26
[PATCH 00/11] Add virtual EPT support Xen.
From: Zhang Xiantao <xiantao.zhang@intel.com> With virtual EPT support, L1 hyerpvisor can use EPT hardware for L2 guest''s memory virtualization. In this way, L2 guest''s performance can be improved sharply. According to our testing, some benchmarks can show > 5x performance gain. Signed-off-by: Zhang Xiantao <xiantao.zhang@intel.com> Zhang Xiantao (11):
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>
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
2008 Oct 17
6
[PATCH, RFC] i386: highmem access assistance hypercalls
...=========================== --- 2008-09-19.orig/xen/arch/x86/mm.c 2008-09-17 09:26:41.000000000 +0200 +++ 2008-09-19/xen/arch/x86/mm.c 2008-09-19 14:00:01.000000000 +0200 @@ -2432,6 +2432,29 @@ static inline cpumask_t vcpumask_to_pcpu return pmask; } +#ifdef __i386__ +static inline void *fixmap_domain_page(unsigned 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...
2011 Jan 21
11
[PATCH]x86:x2apic: Disable x2apic on x86-32 permanently
...dif + if ( !opt_x2apic ) { if ( !x2apic_enabled ) diff -r 02c0af2bf280 xen/arch/x86/x86_32/domain_page.c --- a/xen/arch/x86/x86_32/domain_page.c Mon Jan 17 18:05:52 2011 +0000 +++ b/xen/arch/x86/x86_32/domain_page.c Wed Jan 19 03:24:16 2011 -0500 @@ -53,6 +53,8 @@ perfc_incr(map_domain_page_count); v = mapcache_current_vcpu(); + /* Prevent vcpu pointer being used before initialize. */ + ASSERT((unsigned long)v != 0xfffff000); dcache = &v->domain->arch.mapcache; vcache = &v->arch.mapcache; _______________________________________________ Xen-dev...
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
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
2011 Sep 23
2
Some problems about xenpaging
...{ + mdelay(1); + try_count ++; + if ( try_count > 65535 ) + { + goto crash; + } + mfn = mfn_x(gfn_to_mfn(v->domain, cr3 >> PAGE_SHIFT, &p2mt)); + }while( !mfn_valid(mfn)); + } + p = map_domain_page(mfn); _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
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
2005 Jun 30
0
[PATCH][10/10] Use copy_from_user when accessing guest_pt
...nsigned long smfn = __shadow_status(d, gpfn, PGT_snapshot); - l1_pgentry_t *snapshot; // could be L1s or L2s or ... + l1_pgentry_t *snapshot, gpte; // could be L1s or L2s or ... int entries_match; perfc_incrc(snapshot_entry_matches_calls); @@ -1916,10 +1916,14 @@ snapshot = map_domain_page(smfn); + if (__copy_from_user(&gpte, &guest_pt[index], + sizeof(gpte))) + return 0; + // This could probably be smarter, but this is sufficent for // our current needs. // - entries_match = !l1e_has_changed(guest_pt[index], snapshot[inde...
2005 Sep 05
0
[PATCH][4/6] Add to virtual device operations
...age: alloc page at 0x%lx\n", l1_mfn); + + /* set l2 page table entry */ + mpl2e[l2_table_offset(hva)] = + l2e_from_pfn (l1_mfn, __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(...
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