Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932461AbbGJNrx (ORCPT ); Fri, 10 Jul 2015 09:47:53 -0400 Received: from mail-wg0-f46.google.com ([74.125.82.46]:34730 "EHLO mail-wg0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932294AbbGJNrp (ORCPT ); Fri, 10 Jul 2015 09:47:45 -0400 Date: Fri, 10 Jul 2015 15:47:40 +0200 From: Frederic Weisbecker To: Oleg Nesterov Cc: LKML , Christoph Lameter , Rik van Riel , Andrew Morton Subject: Re: [PATCH 2/5] kmod: Use system_unbound_wq instead of khelper Message-ID: <20150710134739.GA25078@lerouge> References: <1436465237-22031-1-git-send-email-fweisbec@gmail.com> <1436465237-22031-3-git-send-email-fweisbec@gmail.com> <20150709224406.GA17528@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150709224406.GA17528@redhat.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2098 Lines: 50 On Fri, Jul 10, 2015 at 12:44:06AM +0200, Oleg Nesterov wrote: > On 07/09, Frederic Weisbecker wrote: > > > > We need to launch the usermodehelper kernel threads with the widest > > affinity and this is why we have khelper for. This workqueue has unbound > > properties and thus a wide affinity inherited by all its children. > > > > Now khelper also has special properties that we aren't much interested > > in: ordered and singlethread. There is really no need about ordering as > > all we do is creating kernel threads. This can be done concurrently. > > And singlethread is a useless limitation as well. > > > > The workqueue engine already proposes generic unbound workqueues that > > don't share these useless properties and handle well parallel jobs. > > > > Lets just use them. > > > > Suggested-by: Oleg Nesterov > > Well yes, but it seems that you missed another part of my email ;) > > If we just change usermodehelper to use system_unbound_wq then we > probably should keep set_cpus_allowed_ptr() removed by 4/5. > > Note that system_unbound_wq has ->no_numa == F, so its worker threads > are NUMA bound. Perhaps this is not that bad, I do not know. But at > least this means that 4/5 needs more documentation/justification. Duh! I really thought it was one thread wide affine. I didn't see that while testing because my box is not NUMA and so I saw a global affinity. Now perhaps it is a good thing in the end. At least in nohz full it doesn't change anything as we affine that workqueue too. But we must be sure that a single NUMA node is enough to handle typical loads of usermodehelper. If nobody can't tell, I suppose all we can do is stay conservative and create a global no_numa version of system_unbound_wq... > > But as for this particular patch I obviously like it, khelper_wq > must die imo ;) Sure :-) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/