[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 01/16] VMX: reduce number of posted-interrupt hooks
>>> On 19.07.18 at 03:51, <kevin.tian@xxxxxxxxx> wrote: >> --- a/xen/arch/x86/hvm/vmx/vmx.c >> +++ b/xen/arch/x86/hvm/vmx/vmx.c >> @@ -78,6 +78,10 @@ static int vmx_msr_write_intercept(unsig >> static void vmx_invlpg(struct vcpu *v, unsigned long vaddr); >> static int vmx_vmfunc_intercept(struct cpu_user_regs *regs); >> >> +/* Values for domain's ->arch.hvm_domain.pi_ops.flags. */ >> +#define PI_CSW_FROM (1u << 0) >> +#define PI_CSW_TO (1u << 1) >> + >> struct vmx_pi_blocking_vcpu { >> struct list_head list; >> spinlock_t lock; >> @@ -330,8 +334,7 @@ void vmx_pi_hooks_assign(struct domain * >> * This can make sure the PI (especially the NDST feild) is >> * in proper state when we call vmx_vcpu_block(). >> */ >> - d->arch.hvm_domain.pi_ops.switch_from = vmx_pi_switch_from; >> - d->arch.hvm_domain.pi_ops.switch_to = vmx_pi_switch_to; >> + d->arch.hvm_domain.pi_ops.flags = PI_CSW_FROM | PI_CSW_TO; >> >> for_each_vcpu ( d, v ) >> { >> @@ -347,7 +350,6 @@ void vmx_pi_hooks_assign(struct domain * >> } >> >> d->arch.hvm_domain.pi_ops.vcpu_block = vmx_vcpu_block; >> - d->arch.hvm_domain.pi_ops.do_resume = vmx_pi_do_resume; >> } >> >> /* This function is called when pcidevs_lock is held */ >> @@ -384,8 +386,7 @@ void vmx_pi_hooks_deassign(struct domain >> * 'switch_to' hook function. >> */ >> d->arch.hvm_domain.pi_ops.vcpu_block = NULL; >> - d->arch.hvm_domain.pi_ops.switch_from = NULL; >> - d->arch.hvm_domain.pi_ops.do_resume = NULL; >> + d->arch.hvm_domain.pi_ops.flags = PI_CSW_FROM; > > Doesn't it bring functional change ('from' hook was cleared but now > you still get the flag set)? Urgh - of course this was meant to be PI_CSW_TO. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |