From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753239AbYIVMHY (ORCPT ); Mon, 22 Sep 2008 08:07:24 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752113AbYIVMHJ (ORCPT ); Mon, 22 Sep 2008 08:07:09 -0400 Received: from hrndva-omtalb.mail.rr.com ([71.74.56.123]:40839 "EHLO hrndva-omtalb.mail.rr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751497AbYIVMHI (ORCPT ); Mon, 22 Sep 2008 08:07:08 -0400 Date: Mon, 22 Sep 2008 08:07:05 -0400 (EDT) From: Steven Rostedt X-X-Sender: rostedt@gandalf.stny.rr.com To: Ingo Molnar cc: Sitsofe Wheeler , Peter Zijlstra , Arjan van de Ven , linux-kernel@vger.kernel.org Subject: Re: How how latent should non-preemptive scheduling be? In-Reply-To: <20080922115749.GE14301@elte.hu> Message-ID: References: <48D39312.9000400@yahoo.com> <20080922115749.GE14301@elte.hu> User-Agent: Alpine 1.10 (DEB 962 2008-03-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 22 Sep 2008, Ingo Molnar wrote: > * Sitsofe Wheeler wrote: > >> > >> sounds like potential SMM triggered latencies. > > > > I have just gone away and read about the SMM ( > > http://blogs.msdn.com/carmencr/archive/2005/08/31/458609.aspx ). If > > you're right there is pretty much nothing that can be done about the > > problem : ( > > well, since they went away after you enabled CONFIG_PREEMPT=y, they are > definitely in-kernel latencies, not any external SMM latencies. > > I.e. they are inherently fixable. Could you enable: > > CONFIG_DYNAMIC_FTRACE=y > CONFIG_FTRACE_MCOUNT_RECORD=y > > that should make the traces a lot more verbose - every kernel function > executed in the latency path will be logged. That way we'll be able to > say which one takes that long. > > note, you might have to increase /debug/tracing/trace_entries to get a > long enough trace to capture the relevant portion of the latency. Also note, to modify trace_entries, you must be in the none (nop?) tracer, otherwise the size will not be effected. If you find the trace is also too big, you can echo a list of functions into: /debug/tracing/set_ftrace_notrace to not trace those functions. using '>' will remove any existing function in that file, but using '>>' will append functions to the file. For a list of functions that you can add, see: /debug/tracing/available_filter_functions -- Steve