Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp6282087imm; Wed, 27 Jun 2018 05:23:11 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLXsWw6pKoJ1uWn28EcPInqE25mUk0ouo1lnaCIZFBbPtihtbCKEQcWMkbkdnpyR617U70o X-Received: by 2002:a17:902:8549:: with SMTP id d9-v6mr5903370plo.81.1530102191907; Wed, 27 Jun 2018 05:23:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530102191; cv=none; d=google.com; s=arc-20160816; b=UcmIMjw3mL/TROlrHKql3gZ0OFVa+WBDbRx6PsWJefwwzSXVwwq51Rslr27CjHUM0P NAEge8+kIX7k5ghMQt3vZj+yK8canIrKkJ7+rI/b+vTQHFi5NnTg8+PD/PmYUpFtM89m OFIRmZ/DEcqyEUBRQdYN8Tub3MNYB9af4t1gR4rqoZrmQHkz/3AKBZF3m+gSjFdbPitM kQlpYSqyIl4+UHdpJjP4bSj2qWOHQIt8CRdOsFDz2tlXJnSBUK49vyiCB2Vrk0rM1JSp bsrEuz5h7F92GalRYXCdb6fauxgCc9aC0KbPxxVLtf8TQh2awnof/z10HWJeyWGsC9lk GQJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature:arc-authentication-results; bh=46kw7P+nZp9VEdvTkfr9NMpiAeRMJZdlrk0Tv3yIKxQ=; b=uBsLkAI56CX81B/QrrigvkMTp9rpZn3gzFSIWmfcKRZ2KDEf7YrxssSfp56FO0UH52 RdC7iizrJwvWXS3a7/A6SOtA2Qg0BCUUdi0ZqGCZgVt52DF2NN4WvfhGlmJFFVYuas2o 9Tru1FU2o3IQj2V11eNuCm0EhKj81CmObCrNr0C9ORLY5bZQ2HfNOYOT5TI79B4eNp2O aDlUbX0nCqdXlOikHdytL4OEB6UHWLo/8Svnr4ZZ/X44uZiKCvTE1SbQuTDgZbPl+sHB dv6VaUNkmZzYrdjKKmOwbFagPIJStiy5St9gZcTJ+GEOeT9fKpAWWeKe091WZelakmQy MQwA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zD43EvFD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x4-v6si3189442pgv.592.2018.06.27.05.22.56; Wed, 27 Jun 2018 05:23:11 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zD43EvFD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965022AbeF0MVe (ORCPT + 99 others); Wed, 27 Jun 2018 08:21:34 -0400 Received: from mail.kernel.org ([198.145.29.99]:58806 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S964988AbeF0MVc (ORCPT ); Wed, 27 Jun 2018 08:21:32 -0400 Received: from devbox (NE2965lan1.rev.em-net.ne.jp [210.141.244.193]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id AC09A2640F; Wed, 27 Jun 2018 12:21:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1530102092; bh=WJHDU4BLzumQ2Ee3raU+ghre3u7TFdCoAA7x2B7Y3dM=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=zD43EvFD2T3DkRUKYsMxaRJD1y6loBnH7yZkX/Zu94DT5WmN+1XHxaABXlLzSxE2i IGEgHlKrHTdExBkC+MF/AM7sE4MFj/KAAMl8UtNmAElCTC23ayWUvwxuJ4TUvjWHll LsWnPBffhV8QRGwOUsxek3Byhrd/ishI7FOF+HH4= Date: Wed, 27 Jun 2018 21:21:27 +0900 From: Masami Hiramatsu To: Joel Fernandes Cc: linux-kernel@vger.kernel.org, kernel-team@android.com, Boqun Feng , Byungchul Park , Erick Reyes , Ingo Molnar , Julia Cartwright , linux-kselftest@vger.kernel.org, Mathieu Desnoyers , Namhyung Kim , Paul McKenney , Peter Zijlstra , Shuah Khan , Steven Rostedt , Thomas Glexiner , Todd Kjos , Tom Zanussi , Will Deacon Subject: Re: [PATCH v9 7/7] kselftests: Add tests for the preemptoff and irqsoff tracers Message-Id: <20180627212127.e05d66b4f5d11b20d0364375@kernel.org> In-Reply-To: <20180625162102.GA49367@joelaf.mtv.corp.google.com> References: <20180621223236.211495-1-joel@joelfernandes.org> <20180621223236.211495-8-joel@joelfernandes.org> <20180625221302.8507c98e500d8efc70c19d88@kernel.org> <20180625162102.GA49367@joelaf.mtv.corp.google.com> X-Mailer: Sylpheed 3.5.1 (GTK+ 2.24.31; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 25 Jun 2018 09:21:02 -0700 Joel Fernandes wrote: > > From: "Joel Fernandes (Google)" > Subject: [PATCH v9.1 7/7] kselftests: Add tests for the preemptoff and irqsoff > tracers > > Here we add unit tests for the preemptoff and irqsoff tracer by using a > kernel module introduced previously to trigger atomic sections in the > kernel. > Looks good to me. Acked-by: Masami Hiramatsu Thanks! > Signed-off-by: Joel Fernandes (Google) > --- > tools/testing/selftests/ftrace/config | 3 + > .../test.d/preemptirq/irqsoff_tracer.tc | 74 +++++++++++++++++++ > 2 files changed, 77 insertions(+) > create mode 100755 tools/testing/selftests/ftrace/test.d/preemptirq/irqsoff_tracer.tc > > diff --git a/tools/testing/selftests/ftrace/config b/tools/testing/selftests/ftrace/config > index b01924c71c09..29588b328345 100644 > --- a/tools/testing/selftests/ftrace/config > +++ b/tools/testing/selftests/ftrace/config > @@ -4,3 +4,6 @@ CONFIG_FUNCTION_PROFILER=y > CONFIG_TRACER_SNAPSHOT=y > CONFIG_STACK_TRACER=y > CONFIG_HIST_TRIGGERS=y > +CONFIG_PREEMPT_TRACER=y > +CONFIG_IRQSOFF_TRACER=y > +CONFIG_TEST_ATOMIC_SECTIONS=m > diff --git a/tools/testing/selftests/ftrace/test.d/preemptirq/irqsoff_tracer.tc b/tools/testing/selftests/ftrace/test.d/preemptirq/irqsoff_tracer.tc > new file mode 100755 > index 000000000000..2dcd5e4cafb4 > --- /dev/null > +++ b/tools/testing/selftests/ftrace/test.d/preemptirq/irqsoff_tracer.tc > @@ -0,0 +1,74 @@ > +#!/bin/sh > +# SPDX-License-Identifier: GPL-2.0 > +# description: test for the preemptirqsoff tracer > + > +MOD=test_atomic_sections > + > +fail() { > + reset_tracer > + rmmod $MOD || true > + exit_fail > +} > + > +unsup() { #msg > + reset_tracer > + rmmod $MOD || true > + echo $1 > + exit_unsupported > +} > + > +modprobe $MOD || unsup "$MOD module not available" > +rmmod $MOD > + > +grep -q "preemptoff" available_tracers || unsup "preemptoff tracer not enabled" > +grep -q "irqsoff" available_tracers || unsup "irqsoff tracer not enabled" > + > +reset_tracer > + > +# Simulate preemptoff section for half a second couple of times > +echo preemptoff > current_tracer > +sleep 1 > +modprobe $MOD atomic_mode=preempt atomic_time=500000 || fail > +rmmod $MOD || fail > +modprobe $MOD atomic_mode=preempt atomic_time=500000 || fail > +rmmod $MOD || fail > +modprobe $MOD atomic_mode=preempt atomic_time=500000 || fail > +rmmod $MOD || fail > + > +cat trace > + > +# Confirm which tracer > +grep -q "tracer: preemptoff" trace || fail > + > +# Check the end of the section > +egrep -q "5.....us : " trace || fail > + > +# Check for 500ms of latency > +egrep -q "latency: 5..... us" trace || fail > + > +reset_tracer > + > +# Simulate irqsoff section for half a second couple of times > +echo irqsoff > current_tracer > +sleep 1 > +modprobe $MOD atomic_mode=irq atomic_time=500000 || fail > +rmmod $MOD || fail > +modprobe $MOD atomic_mode=irq atomic_time=500000 || fail > +rmmod $MOD || fail > +modprobe $MOD atomic_mode=irq atomic_time=500000 || fail > +rmmod $MOD || fail > + > +cat trace > + > +# Confirm which tracer > +grep -q "tracer: irqsoff" trace || fail > + > +# Check the end of the section > +egrep -q "5.....us : " trace || fail > + > +# Check for 500ms of latency > +egrep -q "latency: 5..... us" trace || fail > + > +reset_tracer > +exit 0 > + > -- > 2.18.0.rc2.346.g013aa6912e-goog > -- Masami Hiramatsu