From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753828AbbCaUj5 (ORCPT ); Tue, 31 Mar 2015 16:39:57 -0400 Received: from mail-qc0-f179.google.com ([209.85.216.179]:34996 "EHLO mail-qc0-f179.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753691AbbCaUjx (ORCPT ); Tue, 31 Mar 2015 16:39:53 -0400 Date: Tue, 31 Mar 2015 16:39:49 -0400 From: Tejun Heo To: Dmitry Torokhov Cc: Greg Kroah-Hartman , "Luis R . Rodriguez" , linux-kernel@vger.kernel.org, Arjan van de Ven , Rusty Russell , Olof Johansson , Tetsuo Handa Subject: Re: [PATCH v2 0/8] Asynchronous device/driver probing support Message-ID: <20150331203949.GI9974@htj.duckdns.org> References: <1427757610-27882-1-git-send-email-dmitry.torokhov@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1427757610-27882-1-git-send-email-dmitry.torokhov@gmail.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 On Mon, Mar 30, 2015 at 04:20:02PM -0700, Dmitry Torokhov wrote: > This series is a combination of changes proposed by Luis a couple months > ago and implementation used by Chrome OS. The issue we are trying to solve > here is "slow" devices and drivers spending "too much time" in their probe() > methods and it affects: > > - overall kernel boot process when drivers are compiled into the kernel > and slow devices stall entire boot progress; > - systemd desire to time out module loading process. > > Unlike Luis' proposal we do make use of asycn_schedule() infrastructure > instead of using a dedicated workqueue, so all existing synchronization > points in kernel that wait for device registration still work the same. > Also, the asynchronous probing is done not only during driver registration > (i.e. when devices are probed asynchronously only if they are registered > before the driver), but also during device registration and deferred probe > handling. This way slow devices do not stall kernel boot even when drivers > are compiled into the kernel. > > The last patch is for adventurous people to try and force > fully-asynchronous boot. It works for me with limited success - I can boot > Rockhip-based box to userspace as long as I force serial to be sychronously > probed and ignore the fact that most devices are using "dummy" regulators > as regulator subsystem really expects regulators to be registered in > orderly fashion on OF-based systems. > > Changes from v1: > > - Changed verbage in change logs and code to emphasise that > PROBE_PREFER_ASYNCHRONOUS is a temporary measure and the end goal is > to enable asynchronous probing by default, as requested by Tejun. Looks good to me. Please feel free to add Acked-by: Tejun Heo Thanks. -- tejun