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

Re: [Xen-devel] [RFC v1 06/15] vt-d: Extend struct iremap_entry to support VT-d Posted-Interrupts




> -----Original Message-----
> From: Andrew Cooper [mailto:andrew.cooper3@xxxxxxxxxx]
> Sent: Friday, March 27, 2015 3:01 AM
> To: Wu, Feng; xen-devel@xxxxxxxxxxxxx
> Cc: Zhang, Yang Z; Tian, Kevin; keir@xxxxxxx; JBeulich@xxxxxxxx
> Subject: Re: [Xen-devel] [RFC v1 06/15] vt-d: Extend struct iremap_entry to
> support VT-d Posted-Interrupts
> 
> On 25/03/15 12:31, Feng Wu wrote:
> > Extend struct iremap_entry according to VT-d Posted-Interrupts Spec.
> >
> > Signed-off-by: Feng Wu <feng.wu@xxxxxxxxx>
> > ---
> >   xen/drivers/passthrough/vtd/iommu.h | 19 +++++++++++++++++++
> >   1 file changed, 19 insertions(+)
> >
> > diff --git a/xen/drivers/passthrough/vtd/iommu.h
> b/xen/drivers/passthrough/vtd/iommu.h
> > index 42047e0..cd61e12 100644
> > --- a/xen/drivers/passthrough/vtd/iommu.h
> > +++ b/xen/drivers/passthrough/vtd/iommu.h
> > @@ -303,6 +303,18 @@ struct iremap_entry {
> >               res_2   : 8,
> >               dst     : 32;
> >       }lo;
> > +    struct {
> > +        u64 p       : 1,
> > +            fpd     : 1,
> > +            res_1   : 6,
> > +            avail   : 4,
> > +            res_2   : 2,
> > +            urg     : 1,
> > +            im      : 1,
> > +            vector  : 8,
> > +            res_3   : 14,
> > +            pda_l   : 26;
> > +    }lo_intpost;
> >     };
> >     union {
> >       u64 hi_val;
> > @@ -312,6 +324,13 @@ struct iremap_entry {
> >               svt     : 2,
> >               res_1   : 44;
> >       }hi;
> > +    struct {
> > +        u64 sid     : 16,
> > +            sq      : 2,
> > +            svt     : 2,
> > +            res_1   : 12,
> > +            pda_h   : 32;
> > +    }hi_intpost;
> 
> I would prefer if this union was reformatted as I suggested in the
> thread from your design doc, but I won't insist on it as a blocker to entry.

Thanks for the comments. I also considered your sugguestion on the Design
doc, here is your proposal:

struct iremap_entry {
    union {
        struct { u64 lo, hi; };
        struct { <bitfields> } norm; (names subject to improvement)
        struct { <bitfields> } post;
    };
};

Seems in that way, we need to change some existing code to adapt to
this new structure. I am okay with both of them, but can we listen
some voices form some others? Is it okay for you?

Thanks,
Feng

> 
> Please however name each of the fields with a comment.
> 
> ~Andrew
> 
> >     };
> >   };
> >


_______________________________________________
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®.