Received: by 2002:a5d:9c59:0:0:0:0:0 with SMTP id 25csp2220360iof; Tue, 7 Jun 2022 23:36:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwFBggKsbSgCju58X3yF4qbOSbo3hgGcqEzJ4YO3DADK1yGB+97LzuEfCoJN9i70tAsSvA9 X-Received: by 2002:a62:a113:0:b0:51c:1b4c:38d1 with SMTP id b19-20020a62a113000000b0051c1b4c38d1mr13857905pff.13.1654670211096; Tue, 07 Jun 2022 23:36:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654670211; cv=none; d=google.com; s=arc-20160816; b=M2eonHyyVOTBLYJ7Rn6m3GeKIQTLM5suM3p+xC/QkkRL/1BuxfuZAvpMFYUA52rTBl R3vBLsnceaIbirj+Ihc1S3kc1J5oHQiydBxqZlY0LzU5Hh6D2gOHTC/jIkG7buAM/+DX wDBVtkdagXRJBMCnMjYH6Z4IbMNuAbgziSFnHDw6qurm4xE5SLqumXu5UzTuzaIkEsHI W6ylKgae4yy505o2YBZC1nu8uIj+eHufKr2YnKkiWaLiOBu9ruejoGqimPHK1bfOcLn0 YlKHYpy3aqfme0A5L5tR5jPZtxvXRtCCNjtpAfIVgRMXOvDACCM3ikRV6Z8dDXAC1kO1 uocQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=vnGhCxOi9trfiSEqLdYnljbSDsXwyd7WnWLJI70As2A=; b=QGycYovbjm4Xr8y8C0/r//I2ph76oojErl6Vnari3UL81cmMVGtAsp+4/meWEv6GQL IWmeNamSBvUVorTVkef1i+neCnvxklfc4pSt4iubfVTTZ8sPsI5n9mUdsBV06CwmGK1h e2jAH5W07M2ECv7IfXI3RwAMBtAkADLH+HbSqSbrWB9krhi2wnbe9mJvuFRlthQfIeeu UMSgtU5swHZFVBy21P9Hlqxgu99m1ZWaK9RWP9Tl/0mrn5CN3SfEUAesY4QhzFuWTXSY UxDe/ZGSk8qilk1GhirzzkBQm57MCg4n4UGD7Sljjqgnxy1crM9zQjJS8+XdlWUhbGx7 DxlQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=wxR92QsK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id e17-20020a170902ef5100b00156bdbdedf4si26122238plx.269.2022.06.07.23.36.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jun 2022 23:36:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=wxR92QsK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id F2E02A5FC5; Tue, 7 Jun 2022 23:00:44 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231241AbiFHCVs (ORCPT + 99 others); Tue, 7 Jun 2022 22:21:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37522 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1444718AbiFHCLR (ORCPT ); Tue, 7 Jun 2022 22:11:17 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CE5433136E; Tue, 7 Jun 2022 12:17:55 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 6DEFB617DA; Tue, 7 Jun 2022 19:17:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 78FA2C385A2; Tue, 7 Jun 2022 19:17:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1654629474; bh=uArzcxqUV8GLzK+qoWCXmfnm+uEKmlPLgDMglSchw54=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=wxR92QsKvApEk4bW945iGY0whnTtizCRju4fOGnWaPUUzKzHLHMqJ+v7cpsO1JpNR V474AmY2wtwZVXayF1QddBXiA25dg041OVmph8JhvgZ+LXa5YvXpJ3ARKPwtGS/l4D msUkcXDokG2BrX63OxViJ1Tfc107SgVoel9zxzHE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Juri Lelli , Ingo Molnar , Clark Williams , Daniel Bristot de Oliveira , "Steven Rostedt (Google)" , Sasha Levin Subject: [PATCH 5.18 703/879] tracing/timerlat: Notify IRQ new max latency only if stop tracing is set Date: Tue, 7 Jun 2022 19:03:41 +0200 Message-Id: <20220607165023.252366174@linuxfoundation.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220607165002.659942637@linuxfoundation.org> References: <20220607165002.659942637@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Daniel Bristot de Oliveira [ Upstream commit aa748949b4e665f473bc5abdc5f66029cb5f5522 ] Currently, the notification of a new max latency is sent from timerlat's IRQ handler anytime a new max latency is found. While this behavior is not wrong, the send IPI overhead itself will increase the thread latency and that is not the desired effect (tracing overhead). Moreover, the thread will notify a new max latency again because the thread latency as it is always higher than the IRQ latency that woke it up. The only case in which it is helpful to notify a new max latency from IRQ is when stop tracing (for the IRQ) is set, as in this case, the thread will not be dispatched. Notify a new max latency from the IRQ handler only if stop tracing is set for the IRQ handler. Link: https://lkml.kernel.org/r/2c2d9a56c0886c8402ba320de32856cbbb10c2bb.1652175637.git.bristot@kernel.org Cc: Juri Lelli Cc: Ingo Molnar Reported-by: Clark Williams Fixes: a955d7eac177 ("trace: Add timerlat tracer") Signed-off-by: Daniel Bristot de Oliveira Signed-off-by: Steven Rostedt (Google) Signed-off-by: Sasha Levin --- kernel/trace/trace_osnoise.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/kernel/trace/trace_osnoise.c b/kernel/trace/trace_osnoise.c index afb92e2f0aea..d8e8167a079f 100644 --- a/kernel/trace/trace_osnoise.c +++ b/kernel/trace/trace_osnoise.c @@ -1578,11 +1578,12 @@ static enum hrtimer_restart timerlat_irq(struct hrtimer *timer) trace_timerlat_sample(&s); - notify_new_max_latency(diff); - - if (osnoise_data.stop_tracing) - if (time_to_us(diff) >= osnoise_data.stop_tracing) + if (osnoise_data.stop_tracing) { + if (time_to_us(diff) >= osnoise_data.stop_tracing) { osnoise_stop_tracing(); + notify_new_max_latency(diff); + } + } wake_up_process(tlat->kthread); -- 2.35.1