Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp752907ybz; Wed, 15 Apr 2020 18:12:00 -0700 (PDT) X-Google-Smtp-Source: APiQypLn/IwFCfcOmckm+BpYNQ+x+iiJ46uOIgECytHpYmSfI3LGdKx+NsWRV/oLQgTUnuUb8PgQ X-Received: by 2002:a05:6402:c82:: with SMTP id cm2mr27641122edb.358.1586999520123; Wed, 15 Apr 2020 18:12:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586999520; cv=none; d=google.com; s=arc-20160816; b=NqqxYxHkjiOSqymcVNBBZPHsxyqfhTVSE6k5Bu3zeIfA6UIjwmdONgb9XKWeQeFldJ JwbQ4fA+mxpxN1nRP2yGDxGoSupBOk1lcsRYgbq38wdGETp8aHL6EHVRg/noW+aHMMC0 YuWNcvMR2Nj1F7tdaPL10jcmZOYxHOaPl3IoEktmvnTspLC6ZDfRABCclvMh/4y8akWU 3MToy6P48RMy5dyYHv73GOAlQKQPRvF7lPsaB3xfV8yty1+Q50YwVrcRP4GLr0buRauK +f4njxoscTAhCIXwpjF5McEF/kY0d0ET8H7SPXr+WBf6KBZxbUELfMLcGVzrSoJzj9LX nQEA== 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=AO8FQcIBS/InzSZoeDG5+CPMG3oUisZA/X5pOuP5vKs=; b=geYTt5jbfFAdNTkqJtfCtgre+m189eiq1xpkVaEEF7L+sxW0bEGO8I2wRvihcmu7gN 8MntsLC9uC1zkwG86GvZhNtniqcG/OnJjAHKYynjIwqVfoLb0n9p23xzplgrKMPjioat aNW3gKXUfKeBqNgB6Kojf5dmBBCNPjPJ4bECY/cLnITCfAPkPNC0sjsNwsb3D1SiRkL+ xjkjf/BC7lz3Xz7uOvLsN2H0QA/lkqSucBz8+QJFSIU2RHUDmPugmtEdab/uNQzHRZJx Qp3w2F3S7J5KWYYU5s9oay90M87oV4hmHzJjG9FQ7L/lbvja1dTjrFusfuufRzlYiWv7 YMEg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=NWwrkLgQ; 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 co20si6723289edb.134.2020.04.15.18.11.32; Wed, 15 Apr 2020 18:12:00 -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=NWwrkLgQ; 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 S1726486AbgDOWIm (ORCPT + 99 others); Wed, 15 Apr 2020 18:08:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53704 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1727993AbgDOWHy (ORCPT ); Wed, 15 Apr 2020 18:07:54 -0400 Received: from mail-oo1-xc41.google.com (mail-yw1-xc41.google.com [IPv6:2607:f8b0:4864:20::c41]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8700BC061A0C for ; Wed, 15 Apr 2020 15:07:54 -0700 (PDT) Received: by mail-oo1-xc41.google.com with SMTP id x17so228991ooa.3 for ; Wed, 15 Apr 2020 15:07:54 -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=AO8FQcIBS/InzSZoeDG5+CPMG3oUisZA/X5pOuP5vKs=; b=NWwrkLgQP+I0zsUOocKLhWk4/pd13XLNZZo4NAu1rj4CpSl2oULy3J5lL+MuKsMfi8 okI6YaIF50qSPE0pvu3keBgsqlpZufgrH0zsZo5+wSDnF7/7C01jRta8EtEmv112+oSX KBkKlexajWQaQiuluOMmBlZ11aoSFMFRsoNhO8D7Id9L69oaVg2FrLMMX/vnG56eexc7 NMulOCOVt36rLyeqoYhrGO6KES0n1PSZeQ/NVN/1UOlhOrGzQzO3UWEDdy5y1tNmuSWv hYYJYI4JaB6sbkqnpJGzHH4PtohC3bYq+lBw0GxnAfAuz3h8e0V3LGz3ByPDRfkaMVAz Q44w== 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=AO8FQcIBS/InzSZoeDG5+CPMG3oUisZA/X5pOuP5vKs=; b=IPu6Np1iX93ks7V8aEnL7/tKMiDdg7dCcuxNS9hWiJ3Zx3/Aookj8OebZ+6lUlFURS lauWUfl04VJSnGGc81UN9q78z5ef+Qn2BGCgNviNnyZeDTgmrXB0pD6fKeKl/Jk+hbUF PT7IDZv10BDLv7MowYdheZeFQQ5sx04HxKUCAhXqOu76Ii2PPneEtP0K0EEDFzMMzmoQ OZhVBWJdDy6Lz3fxA0KKOp47eGydVvRnOos7cAnarXSS4rIxdz7p/Mna9NeOknnJUoRZ zMO+ljfyQ7Q0XdSbxwE1zxP6/rKUYufLbWWWHMFngfsuP0eD8yiCvT4Xif8k7iCZvmw/ mBiQ== X-Gm-Message-State: AGi0Pub/z85IIZ45h8ej3CDU/g+FBh4jBmveTVMPAWdHZKQ72KGT7BG8 I3odozKSMlkTlk5HD4ikYDOb9n77FkE6JfhV3opDSQ== X-Received: by 2002:a4a:df05:: with SMTP id i5mr24869527oou.9.1586988473299; Wed, 15 Apr 2020 15:07:53 -0700 (PDT) MIME-Version: 1.0 References: <20200415085348.5511a5fe@gandalf.local.home> <20200415161424.584d07d3@gandalf.local.home> <20200415164116.40564f2c@gandalf.local.home> <20200415174918.154a86d0@gandalf.local.home> In-Reply-To: <20200415174918.154a86d0@gandalf.local.home> From: John Stultz Date: Wed, 15 Apr 2020 15:07:42 -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 2:49 PM Steven Rostedt wrote: > > On Wed, 15 Apr 2020 14:02:04 -0700 > John Stultz wrote: > > > > > So in my case your concerns may not be a problem, but I guess > > generally it might. Though I'd hope the callback would be unregistered > > (and whatever waiting for the grace period to complete be done) before > > the module removal is complete. But maybe I'm still missing your > > point? > > Hmm, you may have just brought up a problem here... > > You're saying that cpu_pm_register_notifier() callers are called from non > RCU watching context? If that's the case, we have this: Wait? what? I don't think I'm saying that. :) I'm just trying to fix a build issue that prevents a driver from being a module since it has a trace_*_rcuidle call in it. Honestly, I really don't know much about how the cpu pm notifiers interact with rcu. It's just this recent change, which seems necessary, now seemingly prevents the driver from being built as a module: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=efde2659b0fe835732047357b2902cca14f054d9 Maybe there's a better solution than using trace_*_rcuidle? thanks -john