Re: [Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-16 Thread Kai Huang
On 04/17/2015 02:28 PM, Jan Beulich wrote: On 17.04.15 at 04:46, wrote: On 04/16/2015 11:51 PM, Jan Beulich wrote: On 15.04.15 at 09:03, wrote: @@ -190,9 +196,15 @@ static int hap_enable_log_dirty(struct domain *d, bool_t log_global) d->arch.paging.mode |= PG_log_dirty; pagi

Re: [Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-16 Thread Jan Beulich
>>> On 17.04.15 at 04:46, wrote: > On 04/16/2015 11:51 PM, Jan Beulich wrote: > On 15.04.15 at 09:03, wrote: >>> @@ -190,9 +196,15 @@ static int hap_enable_log_dirty(struct domain *d, >>> bool_t log_global) >>> d->arch.paging.mode |= PG_log_dirty; >>> paging_unlock(d); >>> >>>

Re: [Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-16 Thread Kai Huang
On 04/16/2015 11:51 PM, Jan Beulich wrote: On 15.04.15 at 09:03, wrote: @@ -190,9 +196,15 @@ static int hap_enable_log_dirty(struct domain *d, bool_t log_global) d->arch.paging.mode |= PG_log_dirty; paging_unlock(d); +/* enable hardware-assisted log-dirty if it is supporte

Re: [Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-16 Thread Kai Huang
On 04/17/2015 07:07 AM, Tian, Kevin wrote: From: Jan Beulich [mailto:jbeul...@suse.com] Sent: Thursday, April 16, 2015 11:52 PM On 15.04.15 at 09:03, wrote: @@ -190,9 +196,15 @@ static int hap_enable_log_dirty(struct domain *d, bool_t log_global) d->arch.paging.mode |= PG_log_dirty;

Re: [Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-16 Thread Tian, Kevin
> From: Jan Beulich [mailto:jbeul...@suse.com] > Sent: Thursday, April 16, 2015 11:52 PM > > >>> On 15.04.15 at 09:03, wrote: > > > @@ -190,9 +196,15 @@ static int hap_enable_log_dirty(struct domain *d, > bool_t log_global) > > d->arch.paging.mode |= PG_log_dirty; > > paging_unlock(d);

Re: [Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-16 Thread Jan Beulich
>>> On 15.04.15 at 09:03, wrote: > @@ -190,9 +196,15 @@ static int hap_enable_log_dirty(struct domain *d, bool_t > log_global) > d->arch.paging.mode |= PG_log_dirty; > paging_unlock(d); > > +/* enable hardware-assisted log-dirty if it is supported */ > +p2m_enable_hardware_lo

[Xen-devel] [v2 10/11] log-dirty: refine common code to support PML

2015-04-15 Thread Kai Huang
Using PML, it's possible there are dirty GPAs logged in vcpus' PML buffers when userspace peek/clear dirty pages, therefore we need to flush them befor reporting dirty pages to userspace. This applies to both video ram tracking and paging_log_dirty_op. This patch adds new p2m layer functions to en