Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp871169imm; Wed, 11 Jul 2018 12:25:56 -0700 (PDT) X-Google-Smtp-Source: AAOMgperSqHf5eVmNz3s6i8t2wKv7Ks7DU8JBDrrKN+8h8gc6e0CkIE+ao7Wu/mjmOEqv56X/f5b X-Received: by 2002:a17:902:b48c:: with SMTP id y12-v6mr1600924plr.97.1531337156560; Wed, 11 Jul 2018 12:25:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531337156; cv=none; d=google.com; s=arc-20160816; b=x+z6eGQCLoT9j5H7s8cN8Wt+iIMb1QfQQ9XZDzAoh9Dx9YVV1JxHI5XxflrnJ9IX2H le0msbh1G3PNbA2Voia7ckXzNSAMVdwMhXTklat9CJWnDgYOdBXm/Q2s7S+ybj7UrgE3 pvbKpb6W0zbBw55EfBhROJYoXePCAS2WxxaalX38g17bRjZciJMtYR2YtBVcVTCUg+4+ qA0Z2tbERInSRQJVlM3WbFZD1LwY1phO9GPzST1DDSKs84uWW3w95Lr38aAUhG6Ko9ys zmBwxzPSwO7XH07hNMn5kVsMI/cJdrnKWonWdtjcTinG2v2b0yUKDBmn5svBnJSicsMF eqzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:thread-index:thread-topic :content-transfer-encoding:mime-version:subject:references :in-reply-to:message-id:cc:to:from:date:dkim-signature:dkim-filter :arc-authentication-results; bh=+cBKhXzsfRXxoU5kRdAUhpnNn168f41p//TagJZNI+4=; b=MpH1g8Jh1/l4/FZjUdw1kb5jIc4UcqQpSYSf2CHDVlrRzbQw/Y6L076sUvwTGBEDGN Zg56GFATbkJ0lSYd19ddbU+kLsD7pcYQl42p81+gKngXa/wtisJcgbk1TCHNvgLoaQ2e 6aLvDTI3gAcUcCmUCbG0YhAWlsHVsX4C5vskKgGTWGESDun6UC2+F0Gd9i3jLrt9n/tc sJMe6PcPN5afMgqvm2NuJPEEQy7E5oh3wsqV/344QonkCbSXnKq4OKWIkGFSlJ5KZ+sB yN8eezAt8n8Q2Pj1JpAYOsiBY/EUcyk1Qz3c3J6j+PH3UHeDTf8AWPyXUMynQh1rJz5X iL9A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@efficios.com header.s=default header.b=QLJd7yXD; 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=NONE sp=NONE dis=NONE) header.from=efficios.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m76-v6si12908522pfg.323.2018.07.11.12.25.41; Wed, 11 Jul 2018 12:25:56 -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=@efficios.com header.s=default header.b=QLJd7yXD; 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=NONE sp=NONE dis=NONE) header.from=efficios.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389583AbeGKQpa (ORCPT + 99 others); Wed, 11 Jul 2018 12:45:30 -0400 Received: from mail.efficios.com ([167.114.142.138]:52712 "EHLO mail.efficios.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387947AbeGKQp3 (ORCPT ); Wed, 11 Jul 2018 12:45:29 -0400 Received: from localhost (ip6-localhost [IPv6:::1]) by mail.efficios.com (Postfix) with ESMTP id 2646222F596; Wed, 11 Jul 2018 12:40:20 -0400 (EDT) Received: from mail.efficios.com ([IPv6:::1]) by localhost (mail02.efficios.com [IPv6:::1]) (amavisd-new, port 10032) with ESMTP id HzLPm_x9K5cA; Wed, 11 Jul 2018 12:40:19 -0400 (EDT) Received: from localhost (ip6-localhost [IPv6:::1]) by mail.efficios.com (Postfix) with ESMTP id 9F7E522F590; Wed, 11 Jul 2018 12:40:19 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.10.3 mail.efficios.com 9F7E522F590 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=default; t=1531327219; bh=+cBKhXzsfRXxoU5kRdAUhpnNn168f41p//TagJZNI+4=; h=Date:From:To:Message-ID:MIME-Version; b=QLJd7yXDVOn+/uYwGnqbx40RTfxF9hQLvlSf/1sIslz4Mp1HfZtgB4pNW++2fIt0U RB4FB2e7x1Ilp7auJZKBCTvo+WRF8bjmSSZj15+rIXLEb/WvxqWEF4ZdgMVUnoCol8 X+ig+8mWWu6WWtclcuKVAystG3mu2HK5rjUIl/WjZ9d+0Vm/heR+f2qtVMPP1/NUcF AAM18mQX3vqvpv0EU5p709rUpgLA0C9Uepmnipdduf5XF8qjUDjrbDCOi0wEOGW1HV 8lCnNZ3K4QPFxVKIlKT3kMZZs5Ne/GRoeZXK0MIzuPHk2kYNVV6rVMlJJDfNFsuLwi U/WaZhKBKG+Iw== X-Virus-Scanned: amavisd-new at efficios.com Received: from mail.efficios.com ([IPv6:::1]) by localhost (mail02.efficios.com [IPv6:::1]) (amavisd-new, port 10026) with ESMTP id JG_CzDGBuopO; Wed, 11 Jul 2018 12:40:19 -0400 (EDT) Received: from mail02.efficios.com (mail02.efficios.com [167.114.142.138]) by mail.efficios.com (Postfix) with ESMTP id 8946422F58A; Wed, 11 Jul 2018 12:40:19 -0400 (EDT) Date: Wed, 11 Jul 2018 12:40:19 -0400 (EDT) From: Mathieu Desnoyers To: Peter Zijlstra Cc: rostedt , "Joel Fernandes, Google" , linux-kernel , Boqun Feng , Byungchul Park , Ingo Molnar , Julia Cartwright , linux-kselftest , Masami Hiramatsu , Namhyung Kim , "Paul E. McKenney" , Thomas Gleixner , Tom Zanussi Message-ID: <1447856878.4127.1531327219355.JavaMail.zimbra@efficios.com> In-Reply-To: <20180711151751.GI2476@hirez.programming.kicks-ass.net> References: <20180628182149.226164-1-joel@joelfernandes.org> <20180628182149.226164-5-joel@joelfernandes.org> <20180711125647.GG2476@hirez.programming.kicks-ass.net> <20180711090649.68af40f9@gandalf.local.home> <20180711151751.GI2476@hirez.programming.kicks-ass.net> Subject: Re: [PATCH v9 4/7] tracepoint: Make rcuidle tracepoint callers use SRCU MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [167.114.142.138] X-Mailer: Zimbra 8.8.8_GA_2096 (ZimbraWebClient - FF52 (Linux)/8.8.8_GA_1703) Thread-Topic: tracepoint: Make rcuidle tracepoint callers use SRCU Thread-Index: ILWgSY2udbNb/YjbSwAj6wHvbsKD5A== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ----- On Jul 11, 2018, at 11:17 AM, Peter Zijlstra peterz@infradead.org wrote: > On Wed, Jul 11, 2018 at 09:06:49AM -0400, Steven Rostedt wrote: >> On Wed, 11 Jul 2018 14:56:47 +0200 >> Peter Zijlstra wrote: >> >> > On Thu, Jun 28, 2018 at 11:21:46AM -0700, Joel Fernandes wrote: >> > > static inline void tracepoint_synchronize_unregister(void) >> > > { >> > > + synchronize_srcu(&tracepoint_srcu); >> > > synchronize_sched(); >> > > } >> > >> > Given you below do call_rcu_sched() and then call_srcu(), isn't the >> > above the wrong way around? >> >> Good catch! >> >> release_probes() >> call_rcu_sched() >> ---> rcu_free_old_probes() queued >> >> tracepoint_synchronize_unregister() >> synchronize_srcu(&tracepoint_srcu); >> < finishes right away > >> synchronize_sched() >> --> rcu_free_old_probes() >> --> srcu_free_old_probes() queued >> >> Here tracepoint_synchronize_unregister() returned before the srcu >> portion ran. > > I just read the comment that goes with that function; the order doesn't > matter. All we want to ensure is that the unregistration is visible to > either sched or srcu tracepoint users. Exactly, the order does not matter here. Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com