search for: vcpu_flags

Displaying 6 results from an estimated 6 matches for "vcpu_flags".

Did you mean: cpu_flags
2007 Feb 14
0
[PATCH 11/12] Allow vcpu to pause self
...not a code path called from guest, since execution is paused + * after next context switch. ACPI PM requires this to pause vcpu0 of + * dom0 itself, in case that vcpu not running on cpu 0. + */ +void vcpu_pause_self(void) +{ + struct vcpu *v = current; + + set_bit(_VCPUF_need_sync, &v->vcpu_flags); + vcpu_pause_nosync(v); +} + void vcpu_unpause(struct vcpu *v) { int wake; diff -r f6443af464be xen/common/schedule.c --- a/xen/common/schedule.c Tue Feb 13 13:37:12 2007 +0800 +++ b/xen/common/schedule.c Tue Feb 13 13:41:44 2007 +0800 @@ -629,6 +629,13 @@ void context_saved(struct vcpu...
2005 Oct 10
13
[PATCH] 0/2 VCPU creation and allocation
I''ve put together two patches. The first introduces a new dom0_op, set_max_vcpus, which with an associated variable and a check in the VCPUOP handler fixes [1]bug 288. Also included is a new VCPUOP, VCPUOP_create, which handles all of the vcpu creation tasks and leaves initialization and unpausing to VCPUOP_initialize. The separation allows for build-time allocation of vcpus which
2006 Oct 04
0
[PATCH,RFC 6/17] 32-on-64 shared info handling
...@@ static void nmi_dom0_report(unsigned int if ( ((d = dom0) == NULL) || ((v = d->vcpu[0]) == NULL) ) return; - set_bit(reason_idx, &d->shared_info->arch.nmi_reason); + set_bit(reason_idx, nmi_reason(d)); if ( test_and_set_bit(_VCPUF_nmi_pending, &v->vcpu_flags) ) raise_softirq(NMI_SOFTIRQ); /* not safe to wake up a vcpu here */ Index: 2006-10-04/xen/arch/x86/x86_64/asm-offsets.c =================================================================== --- 2006-10-04.orig/xen/arch/x86/x86_64/asm-offsets.c 2006-10-04 15:06:22.000000000 +0200 +++ 2006-10...
2006 Mar 10
12
[PATCH] Add SCHEDOP_block_on
...a pertinent event occurs. */ -static long do_block(void) +static void do_block(void) { struct vcpu *v = current; @@ -258,6 +258,32 @@ /* Check for events /after/ blocking: avoids wakeup waiting race. */ if ( event_pending(v) ) + { + clear_bit(_VCPUF_blocked, &v->vcpu_flags); + } + else + { + TRACE_2D(TRC_SCHED_BLOCK, v->domain->domain_id, v->vcpu_id); + __enter_scheduler(); + } +} + +/* + * Block the currently-executing domain without enabling interrupts, for a + * particular evtchn. Whilst we check for a particular evtchn, /any/ ev...
2006 Jan 25
0
changing max vcpus threshold while a domain is running
...dom0_ops.c warns against this: /* * Can only create new VCPUs while the domain is not fully * constructed * (and hence not runnable). Xen needs auditing for races before * removing this check. */ ret = -EINVAL; if ( test_bit(_VCPUF_initialised, &d->vcpu[0]->vcpu_flags) ) goto maxvcpu_out; Do you know which race condition is being avoided by this check for _VCPUF_initialised? Could it be the for_each_vcpu macro only checks for null and a vcpu structure could be alloc''d but not initialized, and then used inside the macro? Thanks, Ryan _____...
2007 Jan 11
6
[PATCH 4/8] HVM save restore: vcpu context support
...11 16:46:59 2007 +0800 @@ -573,6 +573,7 @@ int arch_set_info_guest( else { hvm_load_cpu_guest_regs(v, &v->arch.guest_context.user_regs); + hvm_load_cpu_context(v, &v->arch.guest_context.hvmcpu_ctxt); } if ( test_bit(_VCPUF_initialised, &v->vcpu_flags) ) diff -r ee20d1905bde xen/arch/x86/domctl.c --- a/xen/arch/x86/domctl.c Thu Jan 11 16:40:55 2007 +0800 +++ b/xen/arch/x86/domctl.c Thu Jan 11 16:49:34 2007 +0800 @@ -322,8 +322,10 @@ void arch_get_info_guest(struct vcpu *v, if ( is_hvm_vcpu(v) ) { - if ( !IS_COMPAT(v->domain...