From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id X5MdLBq+imDfRQAAWB0awg (envelope-from ) for ; Thu, 29 Apr 2021 10:09:30 -0400 Received: by simark.ca (Postfix, from userid 112) id A4AFB1F11C; Thu, 29 Apr 2021 10:09:30 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.lttng.org (lists.lttng.org [167.114.26.123]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 286351E01F for ; Thu, 29 Apr 2021 10:09:30 -0400 (EDT) Received: from lists-lttng01.efficios.com (localhost [IPv6:::1]) by lists.lttng.org (Postfix) with ESMTP id 4FWHS947gVz1dsH; Thu, 29 Apr 2021 10:09:29 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=lists.lttng.org; s=default; t=1619705370; bh=eXF99IL1vX4lJGgf/KtNM7KaUuciGTvYEgd+UxVsBN0=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=lHsyTc0tnAZbNCl5rSbmmkpgbSbG0GIst1siCjTL0Id9Oq4JVr5pZe/02KpJWUhKu WKFE8oKCpCgQJHhyZnfq+YQxiGojEx/zZAxE+CoB6sUWAXC+25cd1U8j9atr6AjBZ1 qWJPr9z5uxf9jfgfU7Yyx1lCGWnlagxyUd9IonWRw4Ovlf1JbD1rCRhCnifl96r5kd GgfmZ5Dh2Jkg7EC4m6YNhN/Du+n6yQH9/X5knQQZsMTzC15W2IRu/U5kCqXT7NuYOU tOXscjHF/6YhXh6TZgwl1YIfEnn9mvzI9cQA/ym69HAlmJMdUhkIWuE9qibhDXFreb 14IwfvQ14sfzg== Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by lists.lttng.org (Postfix) with ESMTPS id 4FWHKX5H5Qz1dsD for ; Thu, 29 Apr 2021 10:03:44 -0400 (EDT) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id A767FAFEF for ; Thu, 29 Apr 2021 13:49:44 +0000 (UTC) Message-ID: To: lttng-dev@lists.lttng.org Date: Thu, 29 Apr 2021 15:49:43 +0200 User-Agent: Evolution 3.38.4 MIME-Version: 1.0 X-Mailman-Approved-At: Thu, 29 Apr 2021 10:09:29 -0400 Subject: [lttng-dev] User-space RCU: call rcu_barrier() before dissociating helper thread? X-BeenThere: lttng-dev@lists.lttng.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: LTTng development list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Martin Wilck via lttng-dev Reply-To: Martin Wilck Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" In multipath-tools, we are using a custom RCU helper thread, which is clean= ed out on exit: https://github.com/opensvc/multipath-tools/blob/23a01fa679481ff1144139222fb= d2c4c863b78f8/multipathd/main.c#L3058 I put a call to rcu_barrier() there in order to make sure all callbacks had= finished before detaching the helper thread. Now we got a report that rcu_barrier() isn't available before user-space RC= U 0.8 = (https://github.com/opensvc/multipath-tools/issues/5) (and RHEL7 / Centos7= =A0 still has 0.7.16). Question: was it over-cautious or otherwise wrong to call rcu_barrier() bef= ore set_thread_call_rcu_data(NULL)? Can we maybe just skip this call? If no, wh= at would be the recommended way for liburcu < 0.8 to dissociate a helper threa= d? (Note: I'm not currently subscribed to lttng-dev). Regards and thanks, Martin _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev