Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp748200ybz; Wed, 15 Apr 2020 18:06:01 -0700 (PDT) X-Google-Smtp-Source: APiQypLIFYt9DzCCRoR2O0h6XvSOddVNQ5U7Gcg/xwya4MY3t9lq5O3QwOCmAOd9w5pnamLJZ0f9 X-Received: by 2002:a05:6402:31b9:: with SMTP id dj25mr27276453edb.284.1586999161322; Wed, 15 Apr 2020 18:06:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586999161; cv=none; d=google.com; s=arc-20160816; b=V9ZeRa9OmbXQ9CPU/wUFVvcC+EkVGuLiQmj9yxA5d6aS6uqFUWoePax1LpodU+22EZ 2QmdGqYYkpoBwdi8tUeFwYFJm4jkH9DQWNHOIm9JzeyBBNrscoEuqO75AbwHUSZ8dFwE 3NwzQ1TcGPKo8yvUA6PqvWguMtv3Q7Te9+nXezXJkoVvJKtuiJ51y5tZ9iCaoOAmQgS8 HLjNm4DN/XYxTQtynAWtz5CkNaVdvW4FDzd5JUN7EeblAQRaZTODO5s0ho9DyMpUuyRv ghYKrSjqiFjZCfpmYy4WWVpJAKAomfvuwsriBip3oFitEEgp9ehFVP//rnvwzsYvrtSW ldmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=E7N/+DQkyWiqwxQNccTH6eWsJt9DMfcvRQg/n6t3Ja8=; b=mAyoQC6Q6+4xJS2tThB+OwpMJ4sK0YdEfd2gr/emptkY9xDpgtTdh0gl10rzgPIXS8 0Z/tefBI51c6EG9fPGKLJapwfSF8MfKP6VVkclwXATPGEJjanaiatH57C734N76L1aAH jskXruuTmLH4BhzUt6DJzeLKzZRMobVMjnF5pOO6WDTkW7mu4ajTNM9ZeDueUoSH9DdU oewDSrTRt5YqYYeCzGVwiZJR5rk9arVhfZXKPqSUu2tl2Ks6RpP0scWdTLrgXgV/DPfj gbLtY/zgJii7IvnKuTjkif6t+6mHr9orVuFJP+P+xV3HJooV/uEDPmDLttJhKzOWi72J YyYA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ynKp2qGN; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bi17si11956053edb.370.2020.04.15.18.05.36; Wed, 15 Apr 2020 18:06:01 -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=@linaro.org header.s=google header.b=ynKp2qGN; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2436696AbgDOT5F (ORCPT + 99 others); Wed, 15 Apr 2020 15:57:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33402 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S2406322AbgDOT5D (ORCPT ); Wed, 15 Apr 2020 15:57:03 -0400 Received: from mail-ot1-x342.google.com (mail-ot1-x342.google.com [IPv6:2607:f8b0:4864:20::342]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7A461C061A0C for ; Wed, 15 Apr 2020 12:57:03 -0700 (PDT) Received: by mail-ot1-x342.google.com with SMTP id m13so1097500otf.6 for ; Wed, 15 Apr 2020 12:57:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=E7N/+DQkyWiqwxQNccTH6eWsJt9DMfcvRQg/n6t3Ja8=; b=ynKp2qGNmiLRebgQ6glvt23ydPIdnpzU4vuQM3TbZpHJdi5grB/Yz4n5w8acKIE5EA mpHNee/zhK9zsIFxUytoRXk1OZDXL7p5QJ/b2QQctoIirRA38RyynxYNM+AIJhrkPy6u W9wySvMHABrSnvUhHEjQZo9N3p72SSCWjmOJgRmqiSCXweeKMz8dTUCbWu3F4Tbqul5/ Erm91YVVHDrpvNMOYgVnYVt+lQEW2T9FH9dQPEuxOSfWAXDxMCAoflFGzi0hi3P35KN4 UyKtRxvuAvaqf1QTqPukQAJtWIHjR5semUJLs/0TsLBLOv1QsLWmjKGtj3cuohKRndab /u5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=E7N/+DQkyWiqwxQNccTH6eWsJt9DMfcvRQg/n6t3Ja8=; b=EcDPRjt3DQy1DZWwh8UrfFTCDu6eHC/XLspENs5bxpnFYWGsyxG0LcZrkK9DusH+7d Z/xD2Rn102+mIImTbqpqtywfmDqLJ2iJzWBMRRh/heGUa637m/oE0GTNQ0IKVvksektx 5rEZ+tfiwVta5Z7kGFVUxsQHb3MTa4lna9rqymaHirH1FpcFucheoZcaKFuPcNwAcHUw tlycbFnZmuL1233cZe2fzkUMl+CF/1VclqxcrEzd0GxfuXD6OLFLjHMqdZnIeo9nUrM2 47DyAHlOkiHn//3CFUEKJozx/4meO83lxkXVFlMcdPqbD+uGy+TVuqNwwhIYt5oyY5Ul mgDQ== X-Gm-Message-State: AGi0PuY9NLTUdsKSKO0w3EA4hUhBRj7QWKArHDuPYDGyLFPKHaCIGD/q 47UfuyoZF889E8Su+JL0149Vt5hXcMi4ipMd+y8uFA== X-Received: by 2002:a05:6830:20c3:: with SMTP id z3mr17902764otq.102.1586980622709; Wed, 15 Apr 2020 12:57:02 -0700 (PDT) MIME-Version: 1.0 References: <20200415085348.5511a5fe@gandalf.local.home> In-Reply-To: <20200415085348.5511a5fe@gandalf.local.home> From: John Stultz Date: Wed, 15 Apr 2020 12:56:52 -0700 Message-ID: Subject: Re: On trace_*_rcuidle functions in modules To: Steven Rostedt Cc: paulmck@kernel.org, Josh Triplett , lkml , Bjorn Andersson , Saravana Kannan , Todd Kjos , Stephen Boyd , Peter Zijlstra , Thomas Gleixner Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 15, 2020 at 5:53 AM Steven Rostedt wrote: > > [ +Peter +Thomas ] > > On Tue, 14 Apr 2020 19:20:01 -0700 > John Stultz wrote: > > > Hey folks, > > So recently I was looking at converting some drivers to be loadable > > modules instead of built-in only, and one of my patches just landed in > > -next and started getting build error reports. > > > > It ends up, recently in the merge window, the driver I was converting > > to module switched a trace_*() function to trace_*_rcuidle() to fix a > > bug. Now when building as a module, if tracing is configured on, it > > can't seem to find the trace_*_rcuidle() symbol. > > Which modules need this. Hey Steven! I'm trying to enable the qcom rpmh driver (drivers/soc/qcom/rpmh-rsc.c) to be a module. As I mentioned to Paul, it registers a cpu_pm notifier callback, which calls its __tcs_buffer_write() function. The trace in the __tcs_buffer_write() function was just converted to using rcuidle to address bugs seen when it was being called from idle. > Currently, Thomas and Peter are working on removing trace events from > places that don't have RCU enabled, or at least cleaning up the context > switches from user to kernel to interrupt. So does that mean folks would most likely lean to trying to remove the tracepoint rather than reevaluating allowing the rcuidle call to be made from the module? thanks -john