Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756818AbeAIDmR (ORCPT + 1 other); Mon, 8 Jan 2018 22:42:17 -0500 Received: from mail-qk0-f181.google.com ([209.85.220.181]:39606 "EHLO mail-qk0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756291AbeAIDmP (ORCPT ); Mon, 8 Jan 2018 22:42:15 -0500 X-Google-Smtp-Source: ACJfBot8oyOezph5Kfd6gbcQ2Xs+vWUizkxwG5CR+H1O676dQBaaP5UKmKid5WxL4YmHXXLHg76qeg== Date: Mon, 8 Jan 2018 19:42:11 -0800 From: Tejun Heo To: "Paul E. McKenney" Cc: Prateek Sood , Peter Zijlstra , avagin@gmail.com, mingo@kernel.org, linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, sramana@codeaurora.org Subject: Re: [PATCH] cgroup/cpuset: fix circular locking dependency Message-ID: <20180109034211.GC3668920@devbig577.frc2.facebook.com> References: <20171211152059.GH2421075@devbig577.frc2.facebook.com> <20171213160617.GQ3919388@devbig577.frc2.facebook.com> <9843d982-d201-8702-2e4e-0541a4d96b53@codeaurora.org> <20180102161656.GD3668920@devbig577.frc2.facebook.com> <20180102174408.GM7829@linux.vnet.ibm.com> <20180102180119.GA1355@linux.vnet.ibm.com> <20180108122823.GL3668920@devbig577.frc2.facebook.com> <20180108225238.GN9671@linux.vnet.ibm.com> <20180109003127.GA30224@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180109003127.GA30224@linux.vnet.ibm.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: Hello, Paul. On Mon, Jan 08, 2018 at 04:31:27PM -0800, Paul E. McKenney wrote: > +static int __init rcu_init_wq_rescuer(void) > +{ > + WARN_ON(init_rescuer(rcu_gp_workqueue)); > + return 0; > +} > +core_initcall(rcu_init_wq_rescuer); So, what I don't get is why RCU needs to call this explicitly. core_initcall() is after workqueue_init() anyway. Why am I missing? Thanks. -- tejun