Received: by 10.192.165.148 with SMTP id m20csp3515816imm; Mon, 7 May 2018 13:44:34 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoi1UmVbCuEDXDNub957wRWj940lb8p7v0raD/JuJFKGgNCNzBoIP6lpqk3I1OdHuEKJNYW X-Received: by 2002:a6b:9589:: with SMTP id x131-v6mr18819215iod.40.1525725874536; Mon, 07 May 2018 13:44:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525725874; cv=none; d=google.com; s=arc-20160816; b=ZsWKvTTPBaVsrvbgid1wHCbwPue7DdzSLj1LGMhG8KLaMYuUYC7NNsEA0Y9RTXeC+a MqTsgjXTMi3CpHxd3MMvI5aGxuMumR/N9gGeeIIfSVAg3vrPoAdm6Nnat6LWUCVhopWo WrSbpGJu0JebLWncXWWqSNUkoNhCXMvnNTnzMq8sDiC9m4RK/KGDXkL3cd6xi8kWNocT OT0+mdNZdYj6x/fKyL8XcSMAFTXLqIl4Z3kfchEuX0G9BqIBlnGr4y88zxXNOpP+8IJt WKr1XX0mdVP7fzYHz1vGNmcg9+Bd/mpQ5wkFd5E/nkmcnDHL2v7RWpx3uAEZPm9q0oTu FPQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=gtwbeyvTlYXT3q3Zvm1Dkc91TdKhquXT2luHUNaUbgM=; b=h3dmk0hZhu8OEkk9pr/P0n7tMTnXCbt+8MjyRRAAxSCgYcL2jnaPKwXgI6/pAzFu9q VkXyj6De2Pqb6l5iG5L0m1Qd+6PK6fLRoX0Wo0K2mnLy3aIoQu4DJTEDOPLOs7UqtV5K wS/zX7nK/mxFw+ih4D0Lel4TihCph8A2n93T6DiPP1GIWaNj7hGKsgZiiRS6wBmaASrY gUZG1BLHF6PNbFOTWwqn4v2CYPZxRQJR8HmO4zNPq1ZnFp8QxFbvTE5WJq3U72CRh9QU raRbokyzHt2Y/GiYojxf588SDyu1EaTOJ567/VFbnwanPN6LldunkraapA24+evW5Wqy B2DQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=iYXFSpJE; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p187-v6si20857509iop.126.2018.05.07.13.44.20; Mon, 07 May 2018 13:44:34 -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=@google.com header.s=20161025 header.b=iYXFSpJE; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752887AbeEGUl7 (ORCPT + 99 others); Mon, 7 May 2018 16:41:59 -0400 Received: from mail-pl0-f67.google.com ([209.85.160.67]:43877 "EHLO mail-pl0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752689AbeEGUl5 (ORCPT ); Mon, 7 May 2018 16:41:57 -0400 Received: by mail-pl0-f67.google.com with SMTP id a39-v6so752147pla.10 for ; Mon, 07 May 2018 13:41:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=gtwbeyvTlYXT3q3Zvm1Dkc91TdKhquXT2luHUNaUbgM=; b=iYXFSpJESUX2Gk2VIgf/nH6fwGVo1JGvxyorDRwN8VKJOQfWUi4JHZ/Zjtg0/Q8/gS luiZEzBEZUkscVUs51+md+nQItv/+h83X1RgxThIRlXjvYDUhf3+/ZQBuIM6naugypZU nZR8jbvAG39iryqDH/Juh7LE3oTDSwYG9J7bdL1P/747LBZykM1Sr7JzhMcCsY5USvbS Iqx58yzrhCnBl3fgj+5feTI1EyjRchbr+OQpIVJ4BBuIEIGoCj7DEsDdLh8UuZiJalNh H6lSlxphiQDF4KdJE6EAITx8LGUwUFu/qtqLVGRaclX+OWuTAe3IQ6JfEpLV6YCHeU9a PDHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=gtwbeyvTlYXT3q3Zvm1Dkc91TdKhquXT2luHUNaUbgM=; b=UmdIhokshWVZlXnYsEFy29FXIN5Lewuka+FnzwKgZ8DOGpp5SP1qvaSKC/dJyC0MH6 m43eYqKmcko9ByNVWyoVNQNIkNROMmPW5Tkom03fTHj0EP6OtxLgH5bEnqJ/olYp3pxX xDNof/giF4/lKknZjLaf2dBjEkNsaK/wQYld4/XNx10Qw8KqqGwGfmJboS/dtndRThj1 2SoilodZAvdJuLKJj0GTJYuwyuSNTEQkTsq0nBO6tjA4tLLQ8E7IFt31OIgj5YFsJZpk rKux33dinWG/BxWHtaAz5pZVheD6t/vUGHCF5w2SMDDB3EMu60ozyFGGU2NH5G0pGa8G LgpQ== X-Gm-Message-State: ALQs6tCYEJ168RB8q3UoM/g8Sj4jfM4Cs081yhODXMEZFSyU7EWMJVrN 1l5Pp46FEmwj4EC7Zto6KB5GZKcklvw= X-Received: by 2002:a17:902:7109:: with SMTP id a9-v6mr39195990pll.271.1525725716776; Mon, 07 May 2018 13:41:56 -0700 (PDT) Received: from joelaf.mtv.corp.google.com ([2620:0:1000:1600:3122:ea9c:d178:eb]) by smtp.gmail.com with ESMTPSA id v16sm66563994pfk.164.2018.05.07.13.41.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 May 2018 13:41:55 -0700 (PDT) From: Joel Fernandes To: linux-kernel@vger.kernel.org Cc: "Joel Fernandes (Google)" , Steven Rostedt , Peter Zilstra , Ingo Molnar , Mathieu Desnoyers , Tom Zanussi , Namhyung Kim , Thomas Glexiner , Boqun Feng , Paul McKenney , Frederic Weisbecker , Randy Dunlap , Masami Hiramatsu , Fenguang Wu , Baohong Liu , Vedang Patel , kernel-team@android.com Subject: [PATCH RFC v6 0/5] Centralize and unify usage of preempt/irq tracepoints Date: Mon, 7 May 2018 13:41:38 -0700 Message-Id: <20180507204143.13061-1-joelaf@google.com> X-Mailer: git-send-email 2.17.0.441.gb46fe60e1d-goog Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: "Joel Fernandes (Google)" This is the next revision of preempt/irq tracepoint centralization and unified usage across the kernel. The preempt/irq tracepoints exist but not everything in the kernel is using it. This makes things not work simultaneously (for ex, only either lockdep or irqsoff events can be used at a time). This series is an attempt to solve that, and also results in a nice clean up of kernel in general. Several ifdefs are simpler, and the design is more unified and better. Also as a result of this, we also speeded performance all rcuidle tracepoints since their handling is simpler. No major changes since v5. Just some spelling errors, small refactoring etc. Also I removed the softirq bug fix from this series and submitted it separately. I am also writing a tracepoint self-test that runs various tests, along with some documentation. I am planning to submit that separately since it'll take some time to complete them and so that these can go in first. See [1] for a preview of the tests I have so far (its early stage). v6: - fixed lockdep_recursion undefined issue, now using lockdep_recursing(). - minor patch clean up v5: - Fixed performance issues due to rcu-idle handling Joel Fernandes (Google) (4): srcu: Add notrace variant of srcu_dereference trace/irqsoff: Split reset into separate functions tracepoint: Make rcuidle tracepoint callers use SRCU tracing: Centralize preemptirq tracepoints and unify their usage Paul McKenney (1): srcu: Add notrace variants of srcu_read_{lock,unlock} include/linux/ftrace.h | 11 +- include/linux/irqflags.h | 11 +- include/linux/lockdep.h | 8 +- include/linux/preempt.h | 2 +- include/linux/srcu.h | 22 +++ include/linux/tracepoint.h | 46 +++++- include/trace/events/preemptirq.h | 23 +-- init/main.c | 5 +- kernel/locking/lockdep.c | 35 ++--- kernel/sched/core.c | 2 +- kernel/trace/Kconfig | 22 ++- kernel/trace/Makefile | 2 +- kernel/trace/trace_irqsoff.c | 235 +++++++++--------------------- kernel/trace/trace_preemptirq.c | 71 +++++++++ kernel/tracepoint.c | 15 +- 15 files changed, 282 insertions(+), 228 deletions(-) create mode 100644 kernel/trace/trace_preemptirq.c [1] tracepoint-selftests: https://tinyurl.com/tptests-1 Cc: Steven Rostedt Cc: Peter Zilstra Cc: Ingo Molnar Cc: Mathieu Desnoyers Cc: Tom Zanussi Cc: Namhyung Kim Cc: Thomas Glexiner Cc: Boqun Feng Cc: Paul McKenney Cc: Frederic Weisbecker Cc: Randy Dunlap Cc: Masami Hiramatsu Cc: Fenguang Wu Cc: Baohong Liu Cc: Vedang Patel Cc: kernel-team@android.com Signed-off-by: Joel Fernandes (Google) -- 2.17.0.441.gb46fe60e1d-goog