Displaying 20 results from an estimated 71 matches for "xen_guest_handl".
Did you mean:
xen_guest_handle
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 XEN_GUEST_HANDLE in hypercall
parameters with XEN_GUEST_HANDLE_PARAM.
On x86 and ia64 things should stay exactly the same.
On ARM all the unsigned long and the guest pointer...
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 XEN_GUEST_HANDLE in hypercall
parameters with XEN_GUEST_HANDLE_PARAM.
On x86 and ia64 things should stay exactly the same.
On ARM all the unsigned long and the guest pointer...
2008 May 24
2
Use of XEN_GUEST_HANDLE
Hi all,
I have recently started to go through xen source. I want to know the
usage of XEN_GUEST_HANDLE.
I see thats its just a macro which will prefix each data type with
__guest_handle_ . And DEFINE_XEN_GUEST_HANDLE(name) will just typedefs
''__guest_handle_name'' to be a pointer to a data type ''name '' .
What is the reason for such abstraction?
And how this X...
2007 Oct 23
6
[PATCH][cpufreq] Xen support for the ondemand governor [1/2] (hypervisor code)
...gned-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
diff -r b4278beaf354 xen/arch/x86/platform_hypercall.c
--- a/xen/arch/x86/platform_hypercall.c Wed Oct 17 13:12:03 2007 +0100
+++ b/xen/arch/x86/platform_hypercall.c Thu Oct 18 16:07:53 2007 -0500
@@ -295,14 +295,17 @@ ret_t do_platform_op(XEN_GUEST_HANDLE(xe
{
uint32_t i, nr_cpus;
uint64_t idletime;
+ uint64_t totaltime;
struct vcpu *v;
XEN_GUEST_HANDLE(uint64_t) idletimes;
+ XEN_GUEST_HANDLE(uint64_t) totaltimes;
ret = -ENOSYS;
if ( cpufreq_controller != FREQCTL_dom0_kernel )...
2012 Sep 20
17
[PATCH 0/4] Add V4V to Xen (v6)
v6 changes:
- Check compiler before using [0] or [].
v5 changes:
- Fix prototypes in v4v.h for do_v4v_op
- Add padding to make sure all the structures
are 64 bits aligned
- Replace [0] with []
v4 changes:
- Stop using ssize_t, use long instead
- Return -MSGSIZE for message bigger than 2GB
- Fixup size handling
- Rename
2008 Sep 19
8
[PATCH] x86: add hypercall to query current underlying pCPU''s frequency
...#include <public/platform.h>
-#include <acpi/cpufreq/processor_perf.h>
+#include <acpi/cpufreq/cpufreq.h>
#include <asm/edd.h>
#include <asm/mtrr.h>
#include "cpu/mtrr/mtrr.h"
@@ -55,6 +55,7 @@ static long cpu_frequency_change_helper(
ret_t do_platform_op(XEN_GUEST_HANDLE(xen_platform_op_t) u_xenpf_op)
{
ret_t ret = 0;
+ struct vcpu *v;
struct xen_platform_op curop, *op = &curop;
if ( !IS_PRIV(current->domain) )
@@ -312,7 +313,6 @@ ret_t do_platform_op(XEN_GUEST_HANDLE(xe
{
uint32_t cpu;
uint64_t idletime, now = NO...
2008 Mar 18
7
A question related with symbol reference?
hi, my friends:
recently, i am reading the source codes about hypercall.
First, i study a simple hypercall, for example, the "do_xen_version".
In "xen-3.1.0-src\xen\common\kernel.c", the definition of "do_xen_version" is:
DO(xen_version) (int cmd, XEN_GUEST_HANDLE(void) arg)
{
....
}
according to the " #define DO(fn) long do_##fn ", the expanded form is "do_xen_version (...)".
then, in the "xen-3.1.0-src\xen\arch\x86\x86_32\entry.S", there is an item in the "hypercall_table", like this:
ENTRY(hypercall_table)
.......
2012 Sep 26
8
[PATCH 2 of 6 V6] amd iommu: call guest_iommu_set_base from hvmloader
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
2008 Jul 24
2
[RFC] i386 highmem assist hypercalls
...igned 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_domain_page(ptr) ((void)(ptr))
+#endif
+
int do_mmuext_op(
XEN_GUEST_HANDLE(mmuext_op_t) uops,
unsigned int count,
@@ -2482,6 +2505,66 @@ int do_mmuext_op(
break;
}
+ case MMUEXT_CLEAR_PAGE:
+ {
+ unsigned char *ptr;
+
+ okay = get_page_and_type_from_pagenr(mfn, PGT_writable_page,
+...
2012 Oct 24
7
[PATCH 4/5] xen: arm: implement remap interfaces needed for privcmd mappings.
...n_page(unsigned long lpfn, unsigned long fgmfn,
+ unsigned int domid)
+{
+ int rc;
+ struct xen_add_to_physmap_range xatp = {
+ .domid = DOMID_SELF,
+ .foreign_domid = domid,
+ .size = 1,
+ .space = XENMAPSPACE_gmfn_foreign,
+ };
+ xen_ulong_t idx = fgmfn;
+ xen_pfn_t gpfn = lpfn;
+
+ set_xen_guest_handle(xatp.idxs, &idx);
+ set_xen_guest_handle(xatp.gpfns, &gpfn);
+
+ rc = HYPERVISOR_memory_op(XENMEM_add_to_physmap_range, &xatp);
+ if (rc) {
+ pr_warn("Failed to map pfn to mfn rc:%d pfn:%lx mfn:%lx\n",
+ rc, lpfn, fgmfn);
+ return 1;
+ }
+ return 0;
+}
+
+struct remap_dat...
2013 Nov 22
10
[PATCH v4] x86: properly handle MSI-X unmask operation from guests
...domain.h
@@ -375,6 +375,12 @@ struct pv_vcpu
spinlock_t shadow_ldt_lock;
};
+struct pending_msix_unmask_info
+{
+ unsigned long ctrl_address;
+ bool_t valid;
+};
+
struct arch_vcpu
{
/*
@@ -439,6 +445,8 @@ struct arch_vcpu
/* A secondary copy of the vcpu time info. */
XEN_GUEST_HANDLE(vcpu_time_info_t) time_info_guest;
+
+ struct pending_msix_unmask_info pending_msix_unmask;
} __cacheline_aligned;
/* Shorthands to improve code legibility. */
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index cadb525..ce8f6ff 100644
--- a/xen/include/xen/pci.h
+++ b/xen/inclu...
2007 Oct 23
2
[PATCH][cpufreq] Xen support for the ondemand governor [2/2] (linux)
...s *this_dbs_info)
+{
+ int load = 0;
+ struct xen_platform_op op;
+ uint64_t idletime[NR_CPUS];
+ uint64_t totaltime[NR_CPUS];
+ struct cpufreq_policy *policy;
+ unsigned int j;
+
+ op.cmd = XENPF_getidletime;
+ op.u.getidletime.max_cpus = num_online_cpus();
+ set_xen_guest_handle(op.u.getidletime.idletime, idletime);
+ set_xen_guest_handle(op.u.getidletime.totaltime, totaltime);
+ HYPERVISOR_platform_op(&op);
+
+ policy = this_dbs_info->cur_policy;
+ for_each_cpu_mask(j, policy->cpus) {
+ cputime64_t total_idle_ticks, total_wall_ticks;
+ cputime64...
2009 Jan 09
5
[PATCH] Enable PCI passthrough with stub domain.
...eturn -EPERM;
+ }
+ }
spin_lock(&pcidevs_lock);
spin_lock(&d->event_lock);
diff -r b9721b2766c1 xen/common/domctl.c
--- a/xen/common/domctl.c Wed Jan 07 11:25:00 2009 +0000
+++ b/xen/common/domctl.c Thu Jan 08 18:58:36 2009 +0900
@@ -193,14 +193,49 @@ long do_domctl(XEN_GUEST_HANDLE(xen_domc
long ret = 0;
struct xen_domctl curop, *op = &curop;
- if ( !IS_PRIV(current->domain) )
- return -EPERM;
-
if ( copy_from_guest(op, u_domctl, 1) )
return -EFAULT;
if ( op->interface_version != XEN_DOMCTL_INTERFACE_VERSION )
ret...
2008 Oct 17
6
[PATCH, RFC] i386: highmem access assistance hypercalls
...igned 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_domain_page(ptr) ((void)(ptr))
+#endif
+
int do_mmuext_op(
XEN_GUEST_HANDLE(mmuext_op_t) uops,
unsigned int count,
@@ -2701,6 +2724,66 @@ int do_mmuext_op(
break;
}
+ case MMUEXT_CLEAR_PAGE:
+ {
+ unsigned char *ptr;
+
+ okay = !get_page_and_type_from_pagenr(mfn, PGT_writable_page,
+...
2008 Mar 07
6
where is the location of definition of "do_xen_version"?
hi, my friends:
Currently, i am studying the way of hypercall's implementation.
i have already known the flow of hypercall's execuation, and i decided to add a new hypercall into the Xen.
first, i want to know the detail of one hypercall function, for example, "do_xen_version", but i can not find
the location of definition of "do_xen_version". who can help me?
i have
2006 Sep 29
4
[PATCH 4/6] xen: export NUMA topology in physinfo hcall
...j;
+ PyObject *ret_obj, *memchunk_obj, *node_to_cpu_obj;
+ xc_memory_chunk_t *chunks;
+ xc_node_to_cpu_t *map;
+
+ /* make space for mem chunks */
+ chunks = (xc_memory_chunk_t *)malloc( sizeof(xc_memory_chunk_t) *
+ PUBLIC_MAXCHUNKS );
+ set_xen_guest_handle(info.memory_chunks, chunks);
+
+ /* make space for node_to_cpu mapping */
+ map = (xc_node_to_cpu_t *)malloc( sizeof(xc_node_to_cpu_t) *
+ PUBLIC_MAX_NUMNODES );
+ set_xen_guest_handle(info.node_to_cpu, map);
+
if ( xc_physinfo(self->xc_handle,...
2009 Jul 15
0
[PATCH] rename for_each_cpu() to for_each_possible_cpu()
...nd also to match Linux.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
--- 2009-07-10.orig/xen/arch/ia64/linux-xen/perfmon.c 2009-05-27 13:54:05.000000000 +0200
+++ 2009-07-10/xen/arch/ia64/linux-xen/perfmon.c 2009-07-15 10:02:08.000000000 +0200
@@ -7313,7 +7313,7 @@ xenpfm_context_create(XEN_GUEST_HANDLE(p
goto out;
/* XXX fmt */
- for_each_cpu(cpu) {
+ for_each_possible_cpu(cpu) {
ctx[cpu] = pfm_context_create(&kreq);
if (ctx[cpu] == NULL) {
error = -ENOMEM;
@@ -7325,20 +7325,20 @@ xenpfm_context_create(XEN_GUEST_HANDLE(p
BUG_ON(in_irq());
spin_lock(&xenpfm_context_...
2008 Nov 25
7
when timer go back in dom0 save and restore or migrate, PV domain hung
...domctl.c
--- a/xen/common/domctl.c Tue Nov 18 14:34:14 2008 +0800
+++ b/xen/common/domctl.c Fri Nov 21 17:34:15 2008 +0800
@@ -24,7 +24,6 @@
#include <asm/current.h>
#include <public/domctl.h>
#include <xsm/xsm.h>
-
extern long arch_do_domctl(
struct xen_domctl *op, XEN_GUEST_HANDLE(xen_domctl_t) u_domctl);
@@ -315,6 +314,16 @@
ret = 0;
}
break;
+ case XEN_DOMCTL_restoredomain:
+ {
+ struct domain *d;
+ if ( (d = rcu_lock_domain_by_id(op->domain)) == NULL )
+ break;
+
+ d->after_restore = 1;
+ rcu_u...
2006 Dec 01
0
[PATCH 3/10] Add support for netfront/netback acceleration drivers
...+#define __XEN_PUBLIC_DOMCTL_H__
+
+#if !defined(__XEN__) && !defined(__XEN_TOOLS__)
+#error "domctl operations are intended for use by node control tools
only"
+#endif
+
+#include "xen.h"
+
+#define XEN_DOMCTL_INTERFACE_VERSION 0x00000004
+
+struct xenctl_cpumap {
+ XEN_GUEST_HANDLE(uint8_t) bitmap;
+ uint32_t nr_cpus;
+};
+
+/*
+ * NB. xen_domctl.domain is an IN/OUT parameter for this operation.
+ * If it is specified as zero, an id is auto-allocated and returned.
+ */
+#define XEN_DOMCTL_createdomain 1
+struct xen_domctl_createdomain {
+ /* IN parameters */
+...
2006 Dec 01
1
[PATCH 2/10] Add support for netfront/netback acceleration drivers
...(__XEN__) && !defined(__XEN_TOOLS__)
-#error "domctl operations are intended for use by node control tools
only"
-#endif
-
#include "xen.h"
-#define XEN_DOMCTL_INTERFACE_VERSION 0x00000004
+#define XEN_DOMCTL_INTERFACE_VERSION 0x00000005
struct xenctl_cpumap {
XEN_GUEST_HANDLE(uint8_t) bitmap;
@@ -341,6 +337,11 @@ struct xen_domctl_iomem_permission {
uint64_t first_mfn; /* first page (physical page number) in
range */
uint64_t nr_mfns; /* number of pages in range (>0) */
uint8_t allow_access; /* allow (!0) or deny (0) access to
range?...