[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH XEN] x86/pt: add a MSI unmask flag to XEN_DOMCTL_bind_pt_irq
On Thu, Aug 24, 2017 at 04:07:40AM -0600, Jan Beulich wrote: > >>> On 24.08.17 at 11:47, <roger.pau@xxxxxxxxxx> wrote: > > @@ -438,6 +439,22 @@ int pt_irq_create_bind( > > pi_update_irte(vcpu ? &vcpu->arch.hvm_vmx.pi_desc : NULL, > > info, pirq_dpci->gmsi.gvec); > > > > + if ( pt_irq_bind->u.msi.gflags & VMSI_UNMASKED ) > > + { > > + struct irq_desc *desc = irq_to_desc(info->arch.irq); > > + unsigned long flags; > > + > > + if ( !desc ) > > + { > > + pt_irq_destroy_bind(d, pt_irq_bind); > > + return -EINVAL; > > + } > > + > > + spin_lock_irqsave(&desc->lock, flags); > > + guest_mask_msi_irq(desc, false); > > + spin_unlock_irqrestore(&desc->lock, flags); > > + } > > + > > break; > > } > > I think you would better use pirq_spin_lock_irq_desc() here. And > wouldn't the addition better be moved up a little (perhaps right > after the dropping of the domain's event lock)? Shouldn't the unmask happen after the posted interrupt is setup? Or it doesn't really matter? I though it was safer to unmask once the bind process was finished. > > --- a/xen/include/asm-x86/hvm/irq.h > > +++ b/xen/include/asm-x86/hvm/irq.h > > @@ -136,6 +136,7 @@ struct dev_intx_gsi_link { > > #define VMSI_DM_MASK 0x200 > > #define VMSI_DELIV_MASK 0x7000 > > #define VMSI_TRIG_MODE 0x8000 > > +#define VMSI_UNMASKED 0x10000 > > As pointed out earlier this effectively is a change to domctl.h, which > (if it hadn't happened already in this release cycle) would require > bumping of the interface version. Please add a note to the commit > message clarifying this, as this complicates possible intentions of > backporting this change. Ack, thanks. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |