From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757538AbcH3K25 (ORCPT ); Tue, 30 Aug 2016 06:28:57 -0400 Received: from mail-pa0-f48.google.com ([209.85.220.48]:34708 "EHLO mail-pa0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751629AbcH3K2z (ORCPT ); Tue, 30 Aug 2016 06:28:55 -0400 From: Binoy Jayan To: "Steven Rostedt (Red Hat)" Cc: Ingo Molnar , Daniel Wagner , Arnd Bergmann , linux-kernel@vger.kernel.org, Masami , Binoy Jayan Subject: [PATCH v4 0/3] *** Latency histograms - IRQSOFF,PREEMPTOFF *** Date: Tue, 30 Aug 2016 15:58:41 +0530 Message-Id: <1472552924-22297-1-git-send-email-binoy.jayan@linaro.org> X-Mailer: git-send-email 1.8.2.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Thank you Daniel for reviewing v3 throroughly. These set of patches [v4] capture latency events caused by interrupts and premption disabled in kernel. The patches are based on the hist trigger feature developed by Tom Zanussi. v3: https://lkml.org/lkml/2016/8/29/50 v2: https://lkml.org/lkml/2016/8/24/296 Mount Debugfs mount -t debugfs nodev /sys/kernel/debug Examples of triggers: echo 'hist:key=latency.log2:val=hitcount:sort=latency' > /sys/kernel/debug/tracing/events/latency/latency_preempt/trigger echo 'hist:key=cpu,latency:val=hitcount:sort=latency if cpu==1' > /sys/kernel/debug/tracing/events/latency/latency_preempt/trigger echo 'hist:key=ltype,cpu:val=latency:sort=ltype,cpu if ltype==0' > /sys/kernel/debug/tracing/events/latency/latency_preempt/trigger Histogram output: cat /sys/kernel/debug/tracing/events/latency/latency_preempt/hist Changes from v3 as per comments from Daniel - A few coding style changes - Dropped the field 'cpu' from the event format fields. TODO: 1. perf interface. Not sure if this is needed 2. Latency histograms - process wakeup latency Binoy Binoy Jayan (2): tracing: Add trace_irqsoff tracepoints tracing: Histogram for missed timer offsets Daniel Wagner (1): tracing: Deference pointers without RCU checks include/linux/hrtimer.h | 3 ++ include/linux/rculist.h | 36 +++++++++++++++++++++ include/linux/tracepoint.h | 4 +-- include/trace/events/latency.h | 64 +++++++++++++++++++++++++++++++++++++ kernel/time/hrtimer.c | 40 +++++++++++++++++++++++ kernel/trace/trace_events_filter.c | 4 +-- kernel/trace/trace_events_trigger.c | 6 ++-- kernel/trace/trace_irqsoff.c | 42 ++++++++++++++++++++++++ 8 files changed, 192 insertions(+), 7 deletions(-) create mode 100644 include/trace/events/latency.h -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project