From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752377AbbFKMaN (ORCPT ); Thu, 11 Jun 2015 08:30:13 -0400 Received: from mail-oi0-f44.google.com ([209.85.218.44]:35371 "EHLO mail-oi0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752332AbbFKMaG (ORCPT ); Thu, 11 Jun 2015 08:30:06 -0400 MIME-Version: 1.0 In-Reply-To: <5579602F.1070801@ahsoftware.de> References: <1432565608-26036-1-git-send-email-tomeu.vizoso@collabora.com> <5577F533.1060007@ahsoftware.de> <5579602F.1070801@ahsoftware.de> Date: Thu, 11 Jun 2015 14:30:05 +0200 Message-ID: Subject: Re: [PATCH 00/21] On-demand device registration From: Linus Walleij To: Alexander Holler Cc: Tomeu Vizoso , Grant Likely , Mark Rutland , "devicetree@vger.kernel.org" , "linux-fbdev@vger.kernel.org" , linux-samsung-soc , "linux-tegra@vger.kernel.org" , "linux-gpio@vger.kernel.org" , "linux-pm@vger.kernel.org" , Dmitry Torokhov , "linux-kernel@vger.kernel.org" , Rob Herring , "linux-pwm@vger.kernel.org" , open@wandq.ahsoftware, "list@wandq.ahsoftware:DRM PANEL DRIVERS" , dmaengine@vger.kernel.org, Dan Williams , "linux-usb@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jun 11, 2015 at 12:17 PM, Alexander Holler wrote: > Am 11.06.2015 um 10:12 schrieb Linus Walleij: >> On Wed, Jun 10, 2015 at 10:28 AM, Alexander Holler >> wrote: >>> You would end up with the same problem of deadlocks as currently, and you >>> would still need something ugly like the defered probe brutforce to avoid >>> them. >> >> >> Sorry I don't get that. Care to elaborate on why? > > > Because loading/initializing on demand doesn't give you any solved order of > drivers to initialize. And it can't because it has no idea about the > requirements of other drivers. The reason why it might work better in the > case of the tegra is that it might give you another initialization order > than the one which is currently choosen, which, by luck, might be a better > one. > > But maybe I missed something, I haven't looked at the patches at all. But > just loading on demand, can't magically give you a working order of drivers > to initialize. E.g. how do you choose the first driver to initialize? So the current patch set introduces dependencies (just for device tree) and Tomeu is working on a more generic dependency approach for any HW description. The first driver to initialize will be as usual the first one in the list for that initlevel, then walking up the initilevels. However if any driver runs into a resource roadblock it will postpone and wait for dependencies to probe first. Certainly it is possible to create deadlocks in this scenario, but the scope is not to create an ubreakable system. Yours, Linus Walleij