Re: [Xen-devel] [RFC v1 03/15] vmx: Extend struct pi_desc to support VT-d Posted-Interrupts

2015-03-26 Thread Andrew Cooper

On 25/03/15 12:31, Feng Wu wrote:

Extend struct pi_desc according to VT-d Posted-Interrupts Spec.

Signed-off-by: Feng Wu feng...@intel.com
---
  xen/include/asm-x86/hvm/vmx/vmcs.h | 16 ++--
  1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/xen/include/asm-x86/hvm/vmx/vmcs.h 
b/xen/include/asm-x86/hvm/vmx/vmcs.h
index 6fce6aa..9631461 100644
--- a/xen/include/asm-x86/hvm/vmx/vmcs.h
+++ b/xen/include/asm-x86/hvm/vmx/vmcs.h
@@ -76,8 +76,20 @@ struct vmx_domain {
  
  struct pi_desc {

  DECLARE_BITMAP(pir, NR_VECTORS);
-u32 control;
-u32 rsvd[7];
+union {
+struct
+{
+u64 on : 1,


Could you put a comment on each line giving the non-abreviated name for 
the fields, similar to ept_entry_t.



+sn : 1,
+rsvd_1 : 13,
+ndm: 1,


Which revision of the spec is this from?  The latest spec linked from 
your covering letter still doesn't identify this 'ndm' field.


~Andrew


+nv : 8,
+rsvd_2 : 8,
+ndst   : 32;
+};
+u64 control;
+};
+u32 rsvd[6];
  } __attribute__ ((aligned (64)));
  
  #define ept_get_wl(ept)   ((ept)-ept_wl)



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


Re: [Xen-devel] [RFC v1 03/15] vmx: Extend struct pi_desc to support VT-d Posted-Interrupts

2015-03-26 Thread Wu, Feng


 -Original Message-
 From: Andrew Cooper [mailto:andrew.coop...@citrix.com]
 Sent: Friday, March 27, 2015 2:37 AM
 To: Wu, Feng; xen-devel@lists.xen.org
 Cc: Zhang, Yang Z; Tian, Kevin; k...@xen.org; jbeul...@suse.com
 Subject: Re: [Xen-devel] [RFC v1 03/15] vmx: Extend struct pi_desc to support
 VT-d Posted-Interrupts
 
 On 25/03/15 12:31, Feng Wu wrote:
  Extend struct pi_desc according to VT-d Posted-Interrupts Spec.
 
  Signed-off-by: Feng Wu feng...@intel.com
  ---
xen/include/asm-x86/hvm/vmx/vmcs.h | 16 ++--
1 file changed, 14 insertions(+), 2 deletions(-)
 
  diff --git a/xen/include/asm-x86/hvm/vmx/vmcs.h
 b/xen/include/asm-x86/hvm/vmx/vmcs.h
  index 6fce6aa..9631461 100644
  --- a/xen/include/asm-x86/hvm/vmx/vmcs.h
  +++ b/xen/include/asm-x86/hvm/vmx/vmcs.h
  @@ -76,8 +76,20 @@ struct vmx_domain {
 
struct pi_desc {
DECLARE_BITMAP(pir, NR_VECTORS);
  -u32 control;
  -u32 rsvd[7];
  +union {
  +struct
  +{
  +u64 on : 1,
 
 Could you put a comment on each line giving the non-abreviated name for
 the fields, similar to ept_entry_t.

Good sugguestion!

 
  +sn : 1,
  +rsvd_1 : 13,
  +ndm: 1,
 
 Which revision of the spec is this from?  The latest spec linked from
 your covering letter still doesn't identify this 'ndm' field.

Oh, 'ndm' means 'Notification Destination Mode' in the earlier version,
However, in the latest Spec, notification event is force to be delivered in 
physical
mode, so this field is not needed. In fact, in my patch, I also set 'ndm' to
physical mode. Anyway, I will change it. Thanks for the finding.

Thanks,
Feng

 
 ~Andrew
 
  +nv : 8,
  +rsvd_2 : 8,
  +ndst   : 32;
  +};
  +u64 control;
  +};
  +u32 rsvd[6];
} __attribute__ ((aligned (64)));
 
#define ept_get_wl(ept)   ((ept)-ept_wl)


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