From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756127AbeAIB3k (ORCPT + 1 other); Mon, 8 Jan 2018 20:29:40 -0500 Received: from mx2.suse.de ([195.135.220.15]:35341 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752209AbeAIB3j (ORCPT ); Mon, 8 Jan 2018 20:29:39 -0500 From: NeilBrown To: Greg Kroah-Hartman Date: Tue, 09 Jan 2018 12:29:28 +1100 Cc: Oleg Drokin , Andreas Dilger , James Simmons , lkml , lustre , Tejun Heo , Lai Jiangshan Subject: Re: [PATCH 3/4] staging: lustre: lnet: convert selftest to use workqueues In-Reply-To: <20180108144558.GA6826@kroah.com> References: <151356013394.15912.9645528414310488005.stgit@noble> <151356031919.15912.12406337913485020577.stgit@noble> <20180108144558.GA6826@kroah.com> Message-ID: <87shbfbz0n.fsf@notabene.neil.brown.name> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Mon, Jan 08 2018, Greg Kroah-Hartman wrote: > On Mon, Dec 18, 2017 at 12:25:19PM +1100, NeilBrown wrote: >> Instead of the cfs workitem library, use workqueues. >>=20 >> As lnet wants to provide a cpu mask of allowed cpus, it >> needs to be a WQ_UNBOUND work queue so that tasks can >> run on cpus other than where they were submitted. > > This patch doesn't apply to my tree :( Probably because some of the kmalloc changes didn't land, and that caused a context change. > >> apply_workqueue_atts needs to be exported for lustre to use it. > > That feels really odd, why is lustre so "special" that the normal > workqueue api doesn't work properly for it? You could ask: what is so special about apply_workqueue_atts() that it isn't exported? It seems as much a part of the workqueue api as anything else. It is even documented in Documentation/core-api/workqueue.rst lustre is using it to identify a subset of CPUs for the workqueue to run on. lustre allows workers to be restricted to select cpus to avoid interfering with other tasks. workqueue has an interface to support this, it just forgot to export it. I've added a note to the patch with some of this explanation, and will re-post once the kmalloc changes land. Thanks, NeilBrown > > I've dropped this, and the next patch, from my queue now. Please fix up > and resend and justify why lustre is so odd :) > > thanks, > > greg k-h --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEG8Yp69OQ2HB7X0l6Oeye3VZigbkFAlpUGvkACgkQOeye3VZi gblFkA//VBZ6ijIt3jhbWxSMrH78OrFQhVrfSsUea8YlIzavsJl2xzbtVB5UPZQ+ LH8g6gXRuI/qc4Qwdl9oVfeYVxGQ2DEyXRDXwsLbvHDIn3JaAdZvdhQUcgQyXxES c1Njg2NfAPNafCwibjmDjKljVW6yUBPNRe5l+zTQM39X6/gFBdgxgouoe/BdmAOH VURbqRS81Qo2uxfk/FajBU+9SA0Sro5EPuMGDplnwryO65f2E8TXqdrSE9nGPfE7 /aMkU9D3JlNJE/B9+5pF3wVkh0h3bn/OZldvBeHdWWmaN8ToQjjUZaA0HYoKPxx8 XqfAHdLl3lri8B7SjPtokoZ71Gyxlgqqhhj/nusBc1YTwP1bgNg6qNXfVqPmerDA AGMEhYFM4DmszSR2d2Ca9hoZ2G7fG9MjdOTLgAOErpsAGQGogsUBpMajXAJyWLtb fiMCdF+ERsKD661bvspGOzMWi8BPkT44pQgrkPrrbzkFSrWRtR5oZzubz8x1ezcR EOxSI7BqIO+/PegL6uCJ/s+pJOm3XpjLScs3pK8R6QADQk8pLZsC1U9bBgZfSsTy HCGUaGBMhKlZaG8xXyhAOgEm7UiNrvVt+cUUKHtePAxFF+PvGG0SbaBeT8TCcH7u +Agj1DRqWGH4deVpWyfDnfJ9JLCAuoXclZF21yGO+AucaHxcZLc= =MnWl -----END PGP SIGNATURE----- --=-=-=--