> -----Original Message----- > From: Xen-devel <xen-devel-boun...@lists.xenproject.org> On Behalf Of > Oleksandr Tyshchenko > Sent: 12 January 2021 21:52 > To: xen-devel@lists.xenproject.org > Cc: Oleksandr Tyshchenko <oleksandr_tyshche...@epam.com>; Paul Durrant > <p...@xen.org>; Jan Beulich > <jbeul...@suse.com>; Andrew Cooper <andrew.coop...@citrix.com>; Roger Pau > Monné > <roger....@citrix.com>; Wei Liu <w...@xen.org>; George Dunlap > <george.dun...@citrix.com>; Julien Grall > <jul...@xen.org>; Stefano Stabellini <sstabell...@kernel.org>; Julien Grall > <julien.gr...@arm.com> > Subject: [PATCH V4 07/24] xen/ioreq: Make x86's hvm_ioreq_(page/vcpu/server) > structs common > > From: Oleksandr Tyshchenko <oleksandr_tyshche...@epam.com> > > The IOREQ is a common feature now and these structs will be used > on Arm as is. Move them to xen/ioreq.h and remove "hvm" prefixes. > > Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshche...@epam.com>
Reviewed-by: Paul Durrant <p...@xen.org> ... with one small nit below (if you happen to do a v5) > Acked-by: Jan Beulich <jbeul...@suse.com> > CC: Julien Grall <julien.gr...@arm.com> > [On Arm only] > Tested-by: Wei Chen <wei.c...@arm.com> > > --- > Please note, this is a split/cleanup/hardening of Julien's PoC: > "Add support for Guest IO forwarding to a device emulator" > > Changes RFC -> V1: > - new patch > > Changes V1 -> V2: > - remove "hvm" prefix > > Changes V2 -> V3: > - update patch according the "legacy interface" is x86 specific > > Changes V3 -> V4: > - add Jan's A-b > --- > xen/arch/x86/hvm/emulate.c | 2 +- > xen/arch/x86/hvm/ioreq.c | 38 +++++++------- > xen/arch/x86/hvm/stdvga.c | 2 +- > xen/arch/x86/mm/p2m.c | 8 +-- > xen/common/ioreq.c | 108 > +++++++++++++++++++-------------------- > xen/include/asm-x86/hvm/domain.h | 36 +------------ > xen/include/asm-x86/p2m.h | 8 +-- > xen/include/xen/ioreq.h | 54 ++++++++++++++++---- > 8 files changed, 128 insertions(+), 128 deletions(-) > [snip] > #ifdef CONFIG_MEM_SHARING > struct mem_sharing_domain > { > @@ -110,7 +76,7 @@ struct hvm_domain { > /* Lock protects all other values in the sub-struct and the default */ > struct { > spinlock_t lock; > - struct hvm_ioreq_server *server[MAX_NR_IOREQ_SERVERS]; > + struct ioreq_server *server[MAX_NR_IOREQ_SERVERS]; NIT: this breaks the alignment... you should also remove some of the indent from the line above. > } ioreq_server; > > /* Cached CF8 for guest PCI config cycles */