> diff --git a/xen/include/asm-x86/hvm/domain.h > b/xen/include/asm-x86/hvm/domain.h > index 27b3de5..49d1ca0 100644 > --- a/xen/include/asm-x86/hvm/domain.h > +++ b/xen/include/asm-x86/hvm/domain.h [...] > struct hvm_domain { > + /* Use for the IO handles by Xen */ > struct hvm_ioreq_page ioreq; > - struct hvm_ioreq_page buf_ioreq; > + struct hvm_ioreq_server *ioreq_server_list; > + uint32_t nr_ioreq_server; > + spinlock_t ioreq_server_lock;
There's some whitespace weirdness here plus some in xen/include/asm-x86/hvm/vcpu.h and xen/include/public/hvm/hvm_op.h. > diff --git a/xen/include/public/hvm/ioreq.h b/xen/include/public/hvm/ioreq.h > index 4022a1d..87aacd3 100644 > --- a/xen/include/public/hvm/ioreq.h > +++ b/xen/include/public/hvm/ioreq.h > @@ -34,6 +34,7 @@ > > #define IOREQ_TYPE_PIO 0 /* pio */ > #define IOREQ_TYPE_COPY 1 /* mmio ops */ > +#define IOREQ_TYPE_PCI_CONFIG 2 /* pci config space ops */ > #define IOREQ_TYPE_TIMEOFFSET 7 > #define IOREQ_TYPE_INVALIDATE 8 /* mapcache */ I wonder why we skip 2-6 now -- perhaps they used to be something else and we are avoiding them to avoid strange errors? In which case adding the new on as 9 might be a good idea. Ian.