|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2] xen/vcpu: add missing dummy_vcpu_info to compat VCPUOP_initialise
This check is missing from the compat version when compared to the
non-compat version.
Signed-off-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx>
Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
Cc: Jan Beulich <jbeulich@xxxxxxxx>
Cc: Tim Deegan <tim@xxxxxxx>
Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
Changes since v1:
- Moved the declaration of dummy_vcpu_info to the header where vcpu_info_t
is defined.
---
xen/common/compat/domain.c | 3 +++
xen/common/domain.c | 2 +-
xen/include/xen/shared.h | 2 ++
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/xen/common/compat/domain.c b/xen/common/compat/domain.c
index 3ca4ef7..157570a 100644
--- a/xen/common/compat/domain.c
+++ b/xen/common/compat/domain.c
@@ -38,6 +38,9 @@ int compat_vcpu_op(int cmd, unsigned int vcpuid,
XEN_GUEST_HANDLE_PARAM(void) ar
{
struct compat_vcpu_guest_context *cmp_ctxt;
+ if ( v->vcpu_info == &dummy_vcpu_info )
+ return -EINVAL;
+
if ( (cmp_ctxt = xmalloc(struct compat_vcpu_guest_context)) == NULL )
{
rc = -ENOMEM;
diff --git a/xen/common/domain.c b/xen/common/domain.c
index cda60a9..cec0dcf 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -70,7 +70,7 @@ integer_param("hardware_dom", hardware_domid);
struct vcpu *idle_vcpu[NR_CPUS] __read_mostly;
-static vcpu_info_t dummy_vcpu_info;
+vcpu_info_t dummy_vcpu_info;
static void __domain_finalise_shutdown(struct domain *d)
{
diff --git a/xen/include/xen/shared.h b/xen/include/xen/shared.h
index 3f5b283..a411a8a 100644
--- a/xen/include/xen/shared.h
+++ b/xen/include/xen/shared.h
@@ -41,6 +41,8 @@ typedef struct vcpu_info vcpu_info_t;
#endif
+extern vcpu_info_t dummy_vcpu_info;
+
#define shared_info(d, field) __shared_info(d, (d)->shared_info, field)
#define vcpu_info(v, field) __vcpu_info(v, (v)->vcpu_info, field)
--
1.9.5 (Apple Git-50.3)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |