Received: by 2002:ac0:bc90:0:0:0:0:0 with SMTP id a16csp685906img; Wed, 20 Mar 2019 08:46:04 -0700 (PDT) X-Google-Smtp-Source: APXvYqyJJgHnq7wRIM1oB9Rl9UrGbQNPZI336Y0ZZ6+rwS3bxABSky1DYLCO5sZ0Wwtiw6u4f0Ie X-Received: by 2002:a65:538e:: with SMTP id x14mr8204075pgq.79.1553096764854; Wed, 20 Mar 2019 08:46:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1553096764; cv=none; d=google.com; s=arc-20160816; b=nYzldVOulcpl9tWypnCLG3rI/nt4ckH3tp0MOYkhnrmoREMgwhW5/nHAyuaCxHlYR7 z0UQK7xKzBRkQ1sM1IoouqaHHYh/BFnIgpn4uE2zJyCAdReGJ/YfRCTufHG6OnIaJTj9 Ep6aOAQoceMFGm395vkWAU9tFcfQNmQGKBkrwM5tDJGzvD1paGvERT7KgWM0nlDtt3Kk PsBnU5pNGyjw2fcVQVc5p7OKSQpvfviUGKfHm9qOQqHXptw3W6GFMug5Z7LqUQAjTV4/ j07g7CtNxIJ3h+D1olEWzL/Utvb+4anulEW65T4bHdXgKB2CLvV5sSwRFtblMIs7ezmr tjtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:reply-to:subject:cc:to:from:date; bh=ePgc1FnNBi+fd+N+fBHe5Q0dnUEEK/8S8haRrbq/yuw=; b=rVKcTI6o7VAGNSyzE9iiH10l0sl2X5QMCVMAslcZsmOJZyuY2YXl8N2kXZThmRhDqq 5PShk4opTScNJVQO1EEKsbTZdxXKCaxpZBXWVOp9j4SCaPDDXkZJXgrNm7cggDnhckAn KADHiBxrOLMIwrx/DXETQqavM9ez+R5AFkZHvknzsWYnwySnGWuFyxfNrydVOczzcGyG QCVfWyQGHRHHuuTFVfbr6CG6kxofJwR5D+ZmRDlAskrHWRWz8xgEz4AoSNdiEjsd+vTZ jqp2XtpEOn3aKg/hbc4vBJ+pf1OdYD3EaTbtNCUbBMXQK05aoMOQpJQBsn5YxIXJtfbq vu3w== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y2si1897667pfn.57.2019.03.20.08.45.49; Wed, 20 Mar 2019 08:46:04 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727012AbfCTPn5 (ORCPT + 99 others); Wed, 20 Mar 2019 11:43:57 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:36986 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726295AbfCTPn4 (ORCPT ); Wed, 20 Mar 2019 11:43:56 -0400 Received: from pps.filterd (m0098417.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x2KFfebg023344 for ; Wed, 20 Mar 2019 11:43:55 -0400 Received: from e15.ny.us.ibm.com (e15.ny.us.ibm.com [129.33.205.205]) by mx0a-001b2d01.pphosted.com with ESMTP id 2rbqbq48yt-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 20 Mar 2019 11:43:54 -0400 Received: from localhost by e15.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 20 Mar 2019 15:43:52 -0000 Received: from b01cxnp23033.gho.pok.ibm.com (9.57.198.28) by e15.ny.us.ibm.com (146.89.104.202) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Wed, 20 Mar 2019 15:43:49 -0000 Received: from b01ledav003.gho.pok.ibm.com (b01ledav003.gho.pok.ibm.com [9.57.199.108]) by b01cxnp23033.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id x2KFhoug17563706 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 20 Mar 2019 15:43:50 GMT Received: from b01ledav003.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 110C5B2065; Wed, 20 Mar 2019 15:43:50 +0000 (GMT) Received: from b01ledav003.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E7622B2066; Wed, 20 Mar 2019 15:43:49 +0000 (GMT) Received: from paulmck-ThinkPad-W541 (unknown [9.70.82.188]) by b01ledav003.gho.pok.ibm.com (Postfix) with ESMTP; Wed, 20 Mar 2019 15:43:49 +0000 (GMT) Received: by paulmck-ThinkPad-W541 (Postfix, from userid 1000) id 4B51116C30D6; Wed, 20 Mar 2019 08:44:40 -0700 (PDT) Date: Wed, 20 Mar 2019 08:44:40 -0700 From: "Paul E. McKenney" To: Sebastian Andrzej Siewior Cc: linux-kernel@vger.kernel.org, Josh Triplett , Steven Rostedt , Mathieu Desnoyers , Lai Jiangshan , Joel Fernandes , tglx@linutronix.de, Mike Galbraith Subject: Re: [PATCH v2] rcu: Allow to eliminate softirq processing from rcutree Reply-To: paulmck@linux.ibm.com References: <20190315111130.4902-1-bigeasy@linutronix.de> <20190318022434.GE4102@linux.ibm.com> <20190319114419.qlsw3i5bmndoyvao@linutronix.de> <20190320113219.d6c3gouqbnsnl5nj@linutronix.de> <20190320152146.GH4102@linux.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20190320152146.GH4102@linux.ibm.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-GCONF: 00 x-cbid: 19032015-0068-0000-0000-000003A88F92 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00010789; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000281; SDB=6.01177127; UDB=6.00615755; IPR=6.00957822; MB=3.00026075; MTD=3.00000008; XFM=3.00000015; UTC=2019-03-20 15:43:51 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 19032015-0069-0000-0000-000047E1A171 Message-Id: <20190320154440.GA16332@linux.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-03-20_09:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1903200118 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Mar 20, 2019 at 08:21:46AM -0700, Paul E. McKenney wrote: > On Wed, Mar 20, 2019 at 12:32:19PM +0100, Sebastian Andrzej Siewior wrote: > > On 2019-03-19 12:44:19 [+0100], To Paul E. McKenney wrote: > > > diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c > > > index 0f31b79eb6761..0a719f726e149 100644 > > > --- a/kernel/rcu/tree.c > > > +++ b/kernel/rcu/tree.c > > … > > > +/* > > > + * Spawn per-CPU RCU core processing kthreads. > > > + */ > > > +static int __init rcu_spawn_core_kthreads(void) > > > +{ > > > + int cpu; > > > + > > > + for_each_possible_cpu(cpu) > > > + per_cpu(rcu_data.rcu_cpu_has_work, cpu) = 0; > > > + if (!IS_ENABLED(CONFIG_RCU_BOOST) && !rcu_softirq_enabled) > > > > and this needs to become > > - if (!IS_ENABLED(CONFIG_RCU_BOOST) && !rcu_softirq_enabled) > > + if (!IS_ENABLED(CONFIG_RCU_BOOST) && rcu_softirq_enabled) > > > > With this change and hunk that I just sent to Joel I get thee three RCU > > modes with and without BOOST booted. > > > > Unless there is something (and Paul agrees that the Joel hunk is > > correct) I would post a v3 with those changes included. > > Well, I did get a bunch of grace-period hangs of various sorts when I > ran rcutorture like this: > > tools/testing/selftests/rcutorture/bin/kvm.sh --memory 1G --bootargs rcunosoftirq > > I also got a silent hard hang on TREE03. And an rcutorture forward-progress > failure, which goes along with the grace-period hangs. > > So something does need adjustment. I will try again with this change. And it does seem to work better. I will give it more intense testing later on, but in the meantime I have merged this change into your earlier patch. We will see whether or not I am able summon up the courage to push it into v5.2, however. ;-) Thanx, Paul > > > + return 0; > > > + WARN_ONCE(smpboot_register_percpu_thread(&rcu_cpu_thread_spec), "%s: Could not start rcub kthread, OOM is now expected behavior\n", __func__); > > > + return 0; > > > +} > > > +early_initcall(rcu_spawn_core_kthreads); > > > > Sebastian > >