Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-11 Thread Yu Zhang
On 8/11/2016 4:58 PM, Jan Beulich wrote: On 11.08.16 at 10:47, wrote: On 8/10/2016 6:43 PM, Yu Zhang wrote: For " && p2mt != p2m_ioreq_server" condition, it is just to guarantee that if a write operation is trapped, and at the same period, device model changed the status of ioreq server, it

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-11 Thread Jan Beulich
>>> On 11.08.16 at 10:47, wrote: > On 8/10/2016 6:43 PM, Yu Zhang wrote: >> For " && p2mt != p2m_ioreq_server" condition, it is just to guarantee >> that if a write >> operation is trapped, and at the same period, device model changed the >> status of >> ioreq server, it should be discarded. >

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-11 Thread Yu Zhang
On 8/10/2016 6:43 PM, Yu Zhang wrote: On 8/10/2016 6:33 PM, Jan Beulich wrote: On 10.08.16 at 10:09, wrote: On 8/8/2016 11:40 PM, Jan Beulich wrote: On 12.07.16 at 11:02, wrote: @@ -178,8 +179,34 @@ static int hvmemul_do_io( break; case X86EMUL_UNHANDLEABLE: { -

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-10 Thread Yu Zhang
On 8/10/2016 6:43 PM, Paul Durrant wrote: -Original Message- From: Jan Beulich [mailto:jbeul...@suse.com] Sent: 10 August 2016 11:33 To: Paul Durrant; Yu Zhang Cc: Andrew Cooper; George Dunlap; Jun Nakajima; Kevin Tian; zhiyuan...@intel.com; xen-devel@lists.xen.org; Tim (Xen.org) Subjec

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-10 Thread Yu Zhang
On 8/10/2016 6:33 PM, Jan Beulich wrote: On 10.08.16 at 10:09, wrote: On 8/8/2016 11:40 PM, Jan Beulich wrote: On 12.07.16 at 11:02, wrote: @@ -178,8 +179,34 @@ static int hvmemul_do_io( break; case X86EMUL_UNHANDLEABLE: { -struct hvm_ioreq_server *s = -

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-10 Thread Paul Durrant
> -Original Message- > From: Jan Beulich [mailto:jbeul...@suse.com] > Sent: 10 August 2016 11:33 > To: Paul Durrant; Yu Zhang > Cc: Andrew Cooper; George Dunlap; Jun Nakajima; Kevin Tian; > zhiyuan...@intel.com; xen-devel@lists.xen.org; Tim (Xen.org) > Subject: Re: [PATCH v5 3/4] x86/ioreq

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-10 Thread Jan Beulich
>>> On 10.08.16 at 10:09, wrote: > > On 8/8/2016 11:40 PM, Jan Beulich wrote: > On 12.07.16 at 11:02, wrote: >>> @@ -178,8 +179,34 @@ static int hvmemul_do_io( >>> break; >>> case X86EMUL_UNHANDLEABLE: >>> { >>> -struct hvm_ioreq_server *s = >>> -hv

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-10 Thread Yu Zhang
On 8/8/2016 11:40 PM, Jan Beulich wrote: On 12.07.16 at 11:02, wrote: @@ -178,8 +179,34 @@ static int hvmemul_do_io( break; case X86EMUL_UNHANDLEABLE: { -struct hvm_ioreq_server *s = -hvm_select_ioreq_server(curr->domain, &p); +struct hvm_iore

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-09 Thread Paul Durrant
> Sent: 09 August 2016 09:11 > >> To: Paul Durrant; Yu Zhang > >> Cc: Andrew Cooper; George Dunlap; Jun Nakajima; Kevin Tian; > >> zhiyuan...@intel.com; xen-devel@lists.xen.org; Tim (Xen.org) > >> Subject: Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMO

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-09 Thread Yu Zhang
) Subject: Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server. On 09.08.16 at 09:39, wrote: On 8/8/2016 11:40 PM, Jan Beulich wrote: On 12.07.16 at 11:02, wrote: +rc = -ENOENT; +list_for_each_entry ( s

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-09 Thread Paul Durrant
en-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to > map guest ram with p2m_ioreq_server to an ioreq server. > > >>> On 09.08.16 at 09:39, wrote: > > On 8/8/2016 11:40 PM, Jan Beulich wrote: > >>>>> On 12.07.16 at 11:02, wro

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-09 Thread Jan Beulich
>>> On 09.08.16 at 09:39, wrote: > On 8/8/2016 11:40 PM, Jan Beulich wrote: > On 12.07.16 at 11:02, wrote: >>> +rc = -ENOENT; >>> +list_for_each_entry ( s, >>> + &d->arch.hvm_domain.ioreq_server.list, >>> + list_entry ) >>> +{ >>>

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-09 Thread Yu Zhang
On 8/8/2016 11:40 PM, Jan Beulich wrote: On 12.07.16 at 11:02, wrote: @@ -178,8 +179,34 @@ static int hvmemul_do_io( break; case X86EMUL_UNHANDLEABLE: { -struct hvm_ioreq_server *s = -hvm_select_ioreq_server(curr->domain, &p); +struct hvm_iore

Re: [Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-08-08 Thread Jan Beulich
>>> On 12.07.16 at 11:02, wrote: > @@ -178,8 +179,34 @@ static int hvmemul_do_io( > break; > case X86EMUL_UNHANDLEABLE: > { > -struct hvm_ioreq_server *s = > -hvm_select_ioreq_server(curr->domain, &p); > +struct hvm_ioreq_server *s; > + > +if

[Xen-devel] [PATCH v5 3/4] x86/ioreq server: Add HVMOP to map guest ram with p2m_ioreq_server to an ioreq server.

2016-07-12 Thread Yu Zhang
A new HVMOP - HVMOP_map_mem_type_to_ioreq_server, is added to let one ioreq server claim/disclaim its responsibility for the handling of guest pages with p2m type p2m_ioreq_server. Users of this HVMOP can specify which kind of operation is supposed to be emulated in a parameter named flags. Current