[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [RFC v2 07/15] vt-d: Add API to update IRTE when VT-d PI is used




> -----Original Message-----
> From: Jan Beulich [mailto:JBeulich@xxxxxxxx]
> Sent: Wednesday, June 10, 2015 2:18 PM
> To: Wu, Feng
> Cc: andrew.cooper3@xxxxxxxxxx; george.dunlap@xxxxxxxxxxxxx; Tian, Kevin;
> Zhang, Yang Z; xen-devel@xxxxxxxxxxxxx; keir@xxxxxxx
> Subject: Re: [RFC v2 07/15] vt-d: Add API to update IRTE when VT-d PI is used
> 
> >>> On 08.05.15 at 11:07, <feng.wu@xxxxxxxxx> wrote:
> > +static inline void setup_posted_irte(
> > +    struct iremap_entry *new_ire, struct pi_desc *pi_desc, uint8_t gvec)
> > +{
> > +    new_ire->post.urg = 0;
> > +    new_ire->post.vector = gvec;
> > +    new_ire->post.pda_l = (((u64)virt_to_maddr(pi_desc)) >>
> > +                           (32 - PDA_LOW_BIT)) & PDA_MASK(LOW);
> > +    new_ire->post.pda_h = (((u64)virt_to_maddr(pi_desc)) >> 32) &
> > +                           PDA_MASK(HIGH);
> 
> Looking at this another time I can't see what the and-ing with
> PAD_MASK() is supposed to be good for. 

I cannot understand this well. Do you mean we don't need and PDA_MASK() here?

Thanks,
Feng

Nor can I see the need
> for the u64 casts. The two literal 32-s aren't ideal either, but I
> guess tolerable.
> 
> Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.