Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp2669691pxk; Sun, 27 Sep 2020 17:36:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwpik3NN3vr+MMWeXqXpUfvbLxLpcZCA4Gff8VDRfchq3oUr9QU8U+NjAdbi6C+ARmSLGZY X-Received: by 2002:a17:906:4107:: with SMTP id j7mr13706709ejk.533.1601253381148; Sun, 27 Sep 2020 17:36:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601253381; cv=none; d=google.com; s=arc-20160816; b=gLoccTMKBk0BvmeFqDcoS+IZDik/wW0XJLX1cp9R0fF5VNg7hq8Gh/buCrRtqFv2Zd qyttyiqWgA8GGok14/0pMeShzRF0N1z5oli0un0XPQUtiMCPVCoOromZD14NikC8YDhp y5tPp9y+AgK8egD3OAB9+PSi9HibWYijerSnu9RAigl0Aj6yiOgS5eiltt/+HshCPyc9 1ipVDOeLEsUzvXTiRKxSqPzcXMI+kCRA7QQAYpmVHru0UG3sNWTZROFAuAlAMjqsxcqF o5ZYAaX7iNOqaIDUhU3S73bIVrvINzYQMl87K79aCjN1P90IPLduJCjFcdgeveovPC22 b1zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from:dmarc-filter :sender:dkim-signature; bh=Hl3QkhtpPekMR+0lI5qDM9BSB1xYv8d8dZivIwjTuzg=; b=Ug0YXBWQTefpTDOsQ9H83rkTXyM1lImhqiNJUYQE9GVY01VRGGA+RGtFmk6VyEZ/Qf SniYATeniLl71UeXQOXy9JFIAxjG9kf2SC2N8L7k8eKMz/6Fv9fVH2abyiIybnQ9kwWC Fhi019OiQnX4nRsUr7l68aCe3vyPaeBAcNSF73c/30b62bkg/rNl67t28rGZ8JtmUOF/ wDsBvBvqhaUGIIHVjbU0tFy3sMZ3PBMaVhAQ++BnKdlkCAib6d4SCjRxnRdiNc4/cKLy QWIkqnOAEAO2Mea55gw5L55IvNJl9OEUnxc6jiD/fKabI27HD6wWVPOdM/lDoycO/dfx i74Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=n5wV2YaT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g24si7247563edu.262.2020.09.27.17.35.58; Sun, 27 Sep 2020 17:36:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=n5wV2YaT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726445AbgI1AfH (ORCPT + 99 others); Sun, 27 Sep 2020 20:35:07 -0400 Received: from m42-4.mailgun.net ([69.72.42.4]:13977 "EHLO m42-4.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726387AbgI1AfG (ORCPT ); Sun, 27 Sep 2020 20:35:06 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1601253306; h=Message-Id: Date: Subject: Cc: To: From: Sender; bh=Hl3QkhtpPekMR+0lI5qDM9BSB1xYv8d8dZivIwjTuzg=; b=n5wV2YaTL1BQTeZ3SI1r1IyDMDhCP57U2Bko2dOOMTtgjSNyFZpHzYUtwKoMuYd+tM0oXdVC ixyVzemFwvHih/eDvzDZnSsv3u4fmPhmdQMLYiYCpmSPftA6tlioDyxcjSTneLG3aII7Ur70 6H43MdIwwJYJKbjKLWVFRwTzR7s= X-Mailgun-Sending-Ip: 69.72.42.4 X-Mailgun-Sid: WyI0MWYwYSIsICJsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnIiwgImJlOWU0YSJd Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by smtp-out-n04.prod.us-east-1.postgun.com with SMTP id 5f712fb9971b64f61b09ebe7 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Mon, 28 Sep 2020 00:35:05 GMT Sender: psodagud=codeaurora.org@mg.codeaurora.org Received: by smtp.codeaurora.org (Postfix, from userid 1001) id CDA5AC433A1; Mon, 28 Sep 2020 00:35:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=ALL_TRUSTED,BAYES_00,SPF_FAIL autolearn=no autolearn_force=no version=3.4.0 Received: from th-lint-038.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: psodagud) by smtp.codeaurora.org (Postfix) with ESMTPSA id 1B711C433C8; Mon, 28 Sep 2020 00:35:02 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 1B711C433C8 Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; spf=fail smtp.mailfrom=psodagud@codeaurora.org From: Prasad Sodagudi To: rostedt@goodmis.org, mingo@redhat.com, keescook@chromium.org, saiprakash.ranjan@codeaurora.org Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, gregkh@linuxfoundation.org, anton@enomsg.org, arnd@arndb.de, catalin.marinas@arm.com, ccross@android.com, jbaron@akamai.com, jim.cromie@gmail.com, joe@perches.com, joel@joelfernandes.org, psodagud@codeaurora.org Subject: [PATCH] Register read and writes tracing Date: Sun, 27 Sep 2020 17:34:49 -0700 Message-Id: <1601253290-400618-1-git-send-email-psodagud@codeaurora.org> X-Mailer: git-send-email 2.7.4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Qualcomm team have tried to upstreaming the register trace buffer(RTB) use case earlier - [1] with pstore approach. In that discussion, there was suggestion to use the ftrace events for tracking the register reads and writes. In this patch, added register read/write operations tracing support and also add _no_log variants(for example - readl_relaxed_no_log to readl_relaxed) functions, which will help to avoid excessive logging for certain register operations (continuous writes from a loop). These tracepoints can be used by modules to register probes and log the data convenient for silicon vendor format. [1] - https://lore.kernel.org/lkml/cover.1535119710.git.saiprakash.ranjan@codeaurora.org/ Qualcomm teams uses these logs for debugging various issues in the product life cycle and hopping that this logging would help other silicon vendors as this is generic approach. Please provide your suggestion/comments to bring this patch upstream quality. Prasad Sodagudi (1): tracing: Add register read and write tracing support arch/arm64/include/asm/io.h | 117 ++++++++++++++++++++++++++++++++++++++--- include/linux/iorw.h | 20 +++++++ include/trace/events/rwio.h | 51 ++++++++++++++++++ kernel/trace/Kconfig | 11 ++++ kernel/trace/Makefile | 1 + kernel/trace/trace_readwrite.c | 30 +++++++++++ 6 files changed, 222 insertions(+), 8 deletions(-) create mode 100644 include/linux/iorw.h create mode 100644 include/trace/events/rwio.h create mode 100644 kernel/trace/trace_readwrite.c -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project