Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755508AbbEUMFb (ORCPT ); Thu, 21 May 2015 08:05:31 -0400 Received: from mail-oi0-f53.google.com ([209.85.218.53]:36573 "EHLO mail-oi0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754060AbbEUMF1 (ORCPT ); Thu, 21 May 2015 08:05:27 -0400 MIME-Version: 1.0 In-Reply-To: <20150520162510.GA16635@krava.redhat.com> References: <20150520070057.GK3644@twins.programming.kicks-ass.net> <20150520092842.GF18673@twins.programming.kicks-ass.net> <20150520135209.GI18673@twins.programming.kicks-ass.net> <20150520162510.GA16635@krava.redhat.com> Date: Thu, 21 May 2015 05:05:26 -0700 Message-ID: Subject: Re: perf: odd event scheduling issue From: Stephane Eranian To: Jiri Olsa Cc: Peter Zijlstra , Vince Weaver , LKML , Arnaldo Carvalho de Melo , Ingo Molnar , Paul Mackerras Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2671 Lines: 61 On Wed, May 20, 2015 at 9:25 AM, Jiri Olsa wrote: > On Wed, May 20, 2015 at 03:52:09PM +0200, Peter Zijlstra wrote: >> On Wed, May 20, 2015 at 11:28:42AM +0200, Peter Zijlstra wrote: >> >> > --- >> > >> > c02cdbf60b51b8d98a49185535f5d527a2965142 is the first bad commit >> > commit c02cdbf60b51b8d98a49185535f5d527a2965142 >> > Author: Stephane Eranian >> > Date: Mon Nov 17 20:07:02 2014 +0100 >> > >> > perf/x86/intel: Limit to half counters when the HT workaround is enabled, to avoid exclusive mode starvation >> > >> > This patch limits the number of counters available to each CPU when >> > the HT bug workaround is enabled. >> > >> > This is necessary to avoid situation of counter starvation. Such can >> > arise from configuration where one HT thread, HT0, is using all 4 counters >> > with corrupting events which require exclusion the the sibling HT, HT1. >> > >> > In such case, HT1 would not be able to schedule any event until HT0 >> > is done. To mitigate this problem, this patch artificially limits >> > the number of counters to 2. >> > >> > That way, we can gurantee that at least 2 counters are not in exclusive >> > mode and therefore allow the sibling thread to schedule events of the >> > same type (system vs. per-thread). The 2 counters are not determined >> > in advance. We simply set the limit to two events per HT. >> > >> > This helps mitigate starvation in case of events with specific counter >> > constraints such a PREC_DIST. >> > >> > Note that this does not elimintate the starvation is all cases. But >> > it is better than not having it. >> > >> > (Solution suggested by Peter Zjilstra.) >> > >> > Signed-off-by: Stephane Eranian >> > Signed-off-by: Peter Zijlstra (Intel) >> > Cc: bp@alien8.de >> > Cc: jolsa@redhat.com >> > Cc: kan.liang@intel.com >> > Cc: maria.n.dimakopoulou@gmail.com >> > Link: http://lkml.kernel.org/r/1416251225-17721-11-git-send-email-eranian@google.com >> > Signed-off-by: Ingo Molnar >> >> OK, so if you have the watchdog enabled, that's 1 event, and having a >> max of 2 GP events, adding another 2 events is fail. >> >> Jiri, did you SNB have the watchdog disabled? > > watchdog was enabled > But maybe HT was disabled on your snb machine. > jirka -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/