Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-09-02 Thread Jan Beulich
On 02.09.2019 16:36, Alexandru Stefan ISAILA wrote: > Is there a way we can go on with this issue? As long as Andrew wouldn't change his mind, all I can suggest is that you avoid making your change dependent upon mine. If I (again) end up reviewing it, I'll have to keep in mind to judge on it usin

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-09-02 Thread Alexandru Stefan ISAILA
On 27.08.2019 11:26, Jan Beulich wrote: > On 20.08.2019 22:11, Andrew Cooper wrote: >> On 30/07/2019 15:54, Jan Beulich wrote: @@ -622,14 +622,22 @@ static void *hvmemul_map_linear_addr(     }     if ( p2mt == p2m_ioreq_server ) -    {

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-08-27 Thread Jan Beulich
On 20.08.2019 22:11, Andrew Cooper wrote: On 30/07/2019 15:54, Jan Beulich wrote: @@ -622,14 +622,22 @@ static void *hvmemul_map_linear_addr( } if ( p2mt == p2m_ioreq_server ) -{ -err = NULL; goto out; -

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-08-20 Thread Andrew Cooper
On 30/07/2019 15:54, Jan Beulich wrote: >> @@ -622,14 +622,22 @@ static void *hvmemul_map_linear_addr( >>} >> >>if ( p2mt == p2m_ioreq_server ) >> -{ >> -err = NULL; >>goto out; >> -} >> >>AS

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-30 Thread Alexandru Stefan ISAILA
On 30.07.2019 17:54, Jan Beulich wrote: > On 30.07.2019 16:12, Alexandru Stefan ISAILA wrote: >> >> >> On 30.07.2019 16:27, Jan Beulich wrote: >>> On 30.07.2019 14:21, Alexandru Stefan ISAILA wrote: > @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( > >>>

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-30 Thread Jan Beulich
On 30.07.2019 16:12, Alexandru Stefan ISAILA wrote: > > > On 30.07.2019 16:27, Jan Beulich wrote: >> On 30.07.2019 14:21, Alexandru Stefan ISAILA wrote: >>> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( ASSERT(p2mt == p2m_ram_

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-30 Thread Alexandru Stefan ISAILA
On 30.07.2019 16:27, Jan Beulich wrote: > On 30.07.2019 14:21, Alexandru Stefan ISAILA wrote: >> >>> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( >>> >>> ASSERT(p2mt == p2m_ram_logdirty || >>> !p2m_is_readonly(p2mt)); >>>

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-30 Thread Jan Beulich
On 30.07.2019 14:21, Alexandru Stefan ISAILA wrote: > >> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( >> >>ASSERT(p2mt == p2m_ram_logdirty || >> !p2m_is_readonly(p2mt)); >>} >> + >> +if ( curr->arch.vm_e

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-30 Thread Alexandru Stefan ISAILA
> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( > > ASSERT(p2mt == p2m_ram_logdirty || > !p2m_is_readonly(p2mt)); > } > + > +if ( curr->arch.vm_event && > +curr->arch.vm_event->send_event && >>

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-29 Thread Jan Beulich
On 29.07.2019 10:12, Alexandru Stefan ISAILA wrote: > > > On 19.07.2019 17:23, Razvan Cojocaru wrote: >> On 7/19/19 4:38 PM, Jan Beulich wrote: >>> On 19.07.2019 15:30, Razvan Cojocaru wrote: On 7/19/19 4:18 PM, Jan Beulich wrote: > On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: >>>

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-29 Thread Alexandru Stefan ISAILA
On 19.07.2019 17:23, Razvan Cojocaru wrote: > On 7/19/19 4:38 PM, Jan Beulich wrote: >> On 19.07.2019 15:30, Razvan Cojocaru wrote: >>> On 7/19/19 4:18 PM, Jan Beulich wrote: On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: > On 18.07.2019 15:58, Jan Beulich wrote: >> On 03.07.201

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-23 Thread Alexandru Stefan ISAILA
On 19.07.2019 16:18, Jan Beulich wrote: > On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: >> On 18.07.2019 15:58, Jan Beulich wrote: >>> On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: Currently, we are fully emulating the instruction at RIP when the hardware sees an EPT

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-22 Thread Alexandru Stefan ISAILA
On 19.07.2019 16:18, Jan Beulich wrote: > On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: >> On 18.07.2019 15:58, Jan Beulich wrote: >>> On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: A/D bit writes (on page walks) can be considered benign by an introspection agent, so receivin

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-19 Thread Razvan Cojocaru
On 7/19/19 4:38 PM, Jan Beulich wrote: On 19.07.2019 15:30, Razvan Cojocaru wrote: On 7/19/19 4:18 PM, Jan Beulich wrote: On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: On 18.07.2019 15:58, Jan Beulich wrote: On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: A/D bit writes (on page wa

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-19 Thread Jan Beulich
On 19.07.2019 15:30, Razvan Cojocaru wrote: > On 7/19/19 4:18 PM, Jan Beulich wrote: >> On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: >>> On 18.07.2019 15:58, Jan Beulich wrote: On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: > A/D bit writes (on page walks) can be considered ben

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-19 Thread Razvan Cojocaru
On 7/19/19 4:18 PM, Jan Beulich wrote: On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: On 18.07.2019 15:58, Jan Beulich wrote: On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: A/D bit writes (on page walks) can be considered benign by an introspection agent, so receiving vm_events for t

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-19 Thread Jan Beulich
On 19.07.2019 14:34, Alexandru Stefan ISAILA wrote: > On 18.07.2019 15:58, Jan Beulich wrote: >> On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: >>> A/D bit writes (on page walks) can be considered benign by an introspection >>> agent, so receiving vm_events for them is a pessimization. We try

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-19 Thread Alexandru Stefan ISAILA
On 18.07.2019 15:58, Jan Beulich wrote: > On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: >> A/D bit writes (on page walks) can be considered benign by an introspection >> agent, so receiving vm_events for them is a pessimization. We try here to >> optimize by fitering these events out. > >

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-18 Thread Jan Beulich
On 03.07.2019 12:56, Alexandru Stefan ISAILA wrote: > A/D bit writes (on page walks) can be considered benign by an introspection > agent, so receiving vm_events for them is a pessimization. We try here to > optimize by fitering these events out. But you add the sending of more events - how does "

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-15 Thread Alexandru Stefan ISAILA
On 12.07.2019 04:28, Jan Beulich wrote: > On 11.07.2019 19:13, Tamas K Lengyel wrote: >>> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( >>> >>>ASSERT(p2mt == p2m_ram_logdirty || !p2m_is_readonly(p2mt)); >>>} >>> + >>> +if ( curr->arch.vm_event && >

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-11 Thread Jan Beulich
On 11.07.2019 19:13, Tamas K Lengyel wrote: >> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( >> >> ASSERT(p2mt == p2m_ram_logdirty || !p2m_is_readonly(p2mt)); >> } >> + >> +if ( curr->arch.vm_event && >> +curr->arch.vm_event->send_event && >

Re: [Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-11 Thread Tamas K Lengyel
> @@ -629,6 +697,14 @@ static void *hvmemul_map_linear_addr( > > ASSERT(p2mt == p2m_ram_logdirty || !p2m_is_readonly(p2mt)); > } > + > +if ( curr->arch.vm_event && > +curr->arch.vm_event->send_event && Why not fold these checks into hvm_emulate_send_vm_eve

[Xen-devel] [PATCH v7] x86/emulate: Send vm_event from emulate

2019-07-03 Thread Alexandru Stefan ISAILA
A/D bit writes (on page walks) can be considered benign by an introspection agent, so receiving vm_events for them is a pessimization. We try here to optimize by fitering these events out. Currently, we are fully emulating the instruction at RIP when the hardware sees an EPT fault with npfec.kind !