From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: Re: [PATCH 1/2] x86/VPMU: Disable VPMU when NMI watchdog is on Date: Wed, 28 Jan 2015 18:36:23 -0500 Message-ID: <54C97277.4070606@oracle.com> References: <1422474991-2001-1-git-send-email-boris.ostrovsky@oracle.com> <1422474991-2001-2-git-send-email-boris.ostrovsky@oracle.com> <54C95970.4050601@citrix.com> <54C963A9.8050709@oracle.com> <54C9657D.2010905@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1YGcAD-00076K-Di for xen-devel@lists.xenproject.org; Wed, 28 Jan 2015 23:36:49 +0000 In-Reply-To: <54C9657D.2010905@citrix.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: Andrew Cooper , JBeulich@suse.com Cc: xen-devel@lists.xenproject.org, kevin.tian@intel.com, dietmar.hahn@ts.fujitsu.com List-Id: xen-devel@lists.xenproject.org On 01/28/2015 05:41 PM, Andrew Cooper wrote: > On 28/01/2015 22:33, Boris Ostrovsky wrote: >> On 01/28/2015 04:49 PM, Andrew Cooper wrote: >>> On 28/01/2015 19:56, Boris Ostrovsky wrote: >>>> NMI watchdog sets APIC_LVTPC register to generate an NMI when PMU >>>> counter >>>> overflow occurs. This may be overwritten by VPMU code later, >>>> effectively >>>> turning off the watchdog. >>>> >>>> We should disable VPMU when NMI watchdog is running. >>>> >>>> Signed-off-by: Boris Ostrovsky >>> >>> I completely agree with the aim, but this patch is clunky and you have >>> missed the case where neither 'watchdog' nor 'vpmu' is specified on the >>> command line, but the booleans have been tweaked (which is the XenServer >>> way of choosing defaults while keeping the length of the command line >>> down). >> >> You mean binary patching? Or does XenServer change those flags before >> compilation? Yes, I haven't thought about this. > > We patch the source before compiling. > > https://github.com/xenserver/xen-4.5.pg/blob/master/master/xen-tweak-cmdline-defaults.patch How does this enable NMI watchdog? This patch sets watchdog_force but that alone doesn't enable anything. Or are there other changes that set opt_watchdog (which I was going to test as you suggested below). -boris > >> >>> >>> A more simple approach, which doesn't involve exposing opt_vpmu_enabled >>> or changing any nmi code, would be to have a check in vpmu_initialise() >>> which checks for opt_watchdog and opt_vpmu_enabled and bail. >>