Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp189020imm; Fri, 10 Aug 2018 09:36:43 -0700 (PDT) X-Google-Smtp-Source: AA+uWPzgMYCNfrjGYgWzTxGdpIdGGkaydgS77Uq216P53/tQDYD4V9r3nSfNkzFnlLg9ObMfZ5gx X-Received: by 2002:a62:7886:: with SMTP id t128-v6mr7805081pfc.213.1533919003135; Fri, 10 Aug 2018 09:36:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533919003; cv=none; d=google.com; s=arc-20160816; b=qLEotgBWOS2j+a61SSSSNBV2HZeJ7Y4ZztvwCJpQgDzrAjwP6qn0O4VRpCe5ad5iVI K9mf3Zf2qVZ4Yr3kudUEcQNzmY0ePFBNje52Lu601muJ776YRQ4ROWZG0WtPwTLY3KNb ZNN58U9Hp/z6GLU8+OUPvuwiUaqm50BOpnI0ckTM9SekY9o7oJVDztUePvuj+jLCGWdq YMdi93Iy7FUTSiy+EUIvKJsv65aZmmicWaBs7p/m7qOyo/Zet/tQYfwI439vToAxq2j5 jc5qqBANu79QWPrmLN1hlPyXgj8ElYhRqnY5Eh6dkcBAMUbSVUlZZmx88upVZjymyC/d tO9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :arc-authentication-results; bh=pByY6SJrbHsVfnX71wnQCDH1vRyosBFbT4M/5jHbjKw=; b=oB2/0fOwn8MjefZ1ViaGxYPED/wcKGcrrrEZL+ZV5ApRJg82VLU+JgN1bcvaL2heME 1LbIK/A/TvHjCNXx/nUIdRdeFqzviBtCYV0ZuNys2epZDe/1bG4wQm4BMcCesevUGxIp A0eDQrize+HkZTR0WlJoXPJ4+AQUhQMD9JR4hwdMXn4rFXKIJ3tPp9+zWQLv+xBK9ltc PuXsNfEeO/AVU2uAv/yFFeBjm7Hb8Vb+D4krWgkacPmHYod7DXRU527fjoE+wkybPYE4 b27Hq77BPQKEAksaIZVbKUZOWzaSmafqYsomw6ip72lRn6sZMg9RATeV46sZuRnM6wdT O2bQ== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 1-v6si11129791pgj.128.2018.08.10.09.36.28; Fri, 10 Aug 2018 09:36:43 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729555AbeHJTFy (ORCPT + 99 others); Fri, 10 Aug 2018 15:05:54 -0400 Received: from mail.kernel.org ([198.145.29.99]:54184 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727795AbeHJTFy (ORCPT ); Fri, 10 Aug 2018 15:05:54 -0400 Received: from gandalf.local.home (cpe-66-24-56-78.stny.res.rr.com [66.24.56.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B28152242A; Fri, 10 Aug 2018 16:35:18 +0000 (UTC) Date: Fri, 10 Aug 2018 12:35:17 -0400 From: Steven Rostedt To: LKML Cc: Joel Fernandes , "Paul E. McKenney" , Mathieu Desnoyers , Peter Zijlstra Subject: Re: [RFC][PATCH] tracepoints: Free early tracepoints after RCU is initialized Message-ID: <20180810123517.5e9714ad@gandalf.local.home> In-Reply-To: <20180810123042.51ceddb9@gandalf.local.home> References: <20180810123042.51ceddb9@gandalf.local.home> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 10 Aug 2018 12:30:42 -0400 Steven Rostedt wrote: Maybe I should say SRCU? +/* SRCU is initialized at core_initcall */ +postcore_initcall(release_early_probes); + static inline void release_probes(struct tracepoint_func *old) { if (old) { struct tp_probes *tp_probes = container_of(old, struct tp_probes, probes[0]); + + /* + * We can't free probes if SRCU is not initialized yet. + * Postpone the freeing till after SRCU is initialized. + */ + if (unlikely(!ok_to_free_tracepoints)) { + tp_probes->rcu.next = early_probes; + early_probes = &tp_probes->rcu; + return; + } + -- Steve