From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kai Huang Subject: Re: [v2 10/11] log-dirty: refine common code to support PML Date: Fri, 17 Apr 2015 14:55:06 +0800 Message-ID: <5530AE4A.90207@linux.intel.com> References: <1429081433-9600-1-git-send-email-kai.huang@linux.intel.com> <1429081433-9600-11-git-send-email-kai.huang@linux.intel.com> <552FF6A50200007800072E58@mail.emea.novell.com> <5530740A.1080002@linux.intel.com> <5530C41002000078000730E0@mail.emea.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <5530C41002000078000730E0@mail.emea.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: andrew.cooper3@citrix.com, kevin.tian@intel.com, tim@xen.org, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org 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; >>>> paging_unlock(d); >>>> >>>> + /* enable hardware-assisted log-dirty if it is supported */ >>>> + p2m_enable_hardware_log_dirty(d); >>> I don't see that you would anywhere avoid setting up software >>> log-dirty handling - is that on purpose? If so, is there really a >>> win from adding PML? >>> >>>> if ( log_global ) >>>> { >>>> - /* set l1e entries of P2M table to be read-only. */ >>>> + /* >>>> + * switch to log dirty mode, either by setting l1e entries of P2M table >>>> + * to be read-only, or via hardware-assisted log-dirty. >>>> + */ >>>> p2m_change_entry_type_global(d, p2m_ram_rw, p2m_ram_logdirty); >>> Or did I miss you changing the behavior of this anywhere (as the >>> changed comment suggests)? >> Both of your comments are done in patch 11. > Partly - the new behavior indeed gets added there, but the misconfig > VM exits still seem to be a necessary part of the logic, so the question > stands: Is there really a win from adding PML? Or wait, I think now I > recall - the benefit comes from avoiding the protection violation exits, > not the misconfig ones. Sorry for the noise then. Yes PML is targeted to significantly reduce number of EPT violation caused by write protection of guest memory, and thus reduce hypervisor overhead of log-dirty mechanism. Thanks, -Kai > > Jan >