From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S937169Ab3DJSVB (ORCPT ); Wed, 10 Apr 2013 14:21:01 -0400 Received: from he.sipsolutions.net ([78.46.109.217]:60860 "EHLO sipsolutions.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S936964Ab3DJSU1 (ORCPT ); Wed, 10 Apr 2013 14:20:27 -0400 Message-ID: <1365618018.4235.35.camel@jlt4.sipsolutions.net> Subject: Re: [PATCH 06/18] compat: backport ASYNC_DOMAIN_EXCLUSIVE() From: Johannes Berg To: "Luis R. Rodriguez" Cc: "backports@vger.kernel.org" , Dan Williams , "linux-kernel@vger.kernel.org" Date: Wed, 10 Apr 2013 20:20:18 +0200 In-Reply-To: (sfid-20130410_192654_321949_A237B6D2) References: <1365593728-5720-1-git-send-email-mcgrof@do-not-panic.com> <1365593728-5720-7-git-send-email-mcgrof@do-not-panic.com> <1365600139.4235.4.camel@jlt4.sipsolutions.net> <1365614413.4235.29.camel@jlt4.sipsolutions.net> (sfid-20130410_192654_321949_A237B6D2) Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.6.3-1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2013-04-10 at 10:26 -0700, Luis R. Rodriguez wrote: > > I guess I'd have to review the async API, > > Yeap, reviewing the commit noted would help too. Yeah ... :) > > What's the use of just this when you don't have things like > > async_schedule_domain() and async_synchronize_full_domain(), regulator > > stuff wouldn't compile I think? > > You mean is not having the full asynch that deals with all registered > domains likely to have an issue on the useres of > async_synchronize_full_domain() ? Lets better ask Dan. I don't know. However it seems that in order to have an ASYNC_DOMAIN() or ASYNC_DOMAIN_EXCLUSIVE() you always need to *do* something with it, so for that you'd also need the functions async_schedule_domain() and async_synchronize_full_domain() or similar, at least, no? The point here seems to be making boot faster by starting a bunch of async probing inside a domain, and then you wait for the entire domain, so everything that's in that domain can be done in parallel. Say for example you have 20 SCSI drives. If you look at them serially then you'd waste much time waiting for the drives. The point here appears to be that you create a domain (using this macro), then add all the drives to the domain and then wait for the domain to finish. However, it seems entirely pointless to backport just a small part of the API? johannes