From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754718AbYLGR3C (ORCPT ); Sun, 7 Dec 2008 12:29:02 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751428AbYLGR2w (ORCPT ); Sun, 7 Dec 2008 12:28:52 -0500 Received: from earthlight.etchedpixels.co.uk ([81.2.110.250]:58218 "EHLO lxorguk.ukuu.org.uk" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751216AbYLGR2v (ORCPT ); Sun, 7 Dec 2008 12:28:51 -0500 Date: Sun, 7 Dec 2008 17:28:55 +0000 From: Alan Cox To: "Kay Sievers" Cc: "Evgeniy Polyakov" , "Herbert Xu" , linux-kernel@vger.kernel.org, "Linux Crypto Mailing List" Subject: Re: Runaway loop with the current git. Message-ID: <20081207172855.55fee78f@lxorguk.ukuu.org.uk> In-Reply-To: References: <20081207112335.0afd5192@lxorguk.ukuu.org.uk> <20081207155507.GA15355@gondor.apana.org.au> <20081207160921.693f637a@lxorguk.ukuu.org.uk> <20081207163151.GA31838@ioremap.net> <20081207170108.39dfd93f@lxorguk.ukuu.org.uk> X-Mailer: Claws Mail 3.5.0 (GTK+ 2.12.12; x86_64-redhat-linux-gnu) Organization: Red Hat UK Cyf., Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, Y Deyrnas Gyfunol. Cofrestrwyd yng Nghymru a Lloegr o'r rhif cofrestru 3798903 Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > > /dev/console is a logical mapping to a device which may well be > > different, loaded after PCI is initialised and dependant on PCI. > > So wrong. If no driver is associated, like early, in that case, we > must return -ENODEV, instead of calling modprobe in a loop. It's a > built-in device, and it's easy to fix. You've clearly no idea how initrd even works have you ? If it just returned -ENODEV you wouldn't be able to open the console and you wouldn't trigger the loading of the module to get the console running. So you've now completely buggered the boot process. The correct sequence is Open device Kernel issues hotplug message Hotplug script loads drivers to policy The problem case you have due to initrd bugs is Open device Kernel issues hotplug message Hotplug script opens same device (BUG) Kernel issues hotplug message ..... Kernel detects this is stuck Kernel replies with -ENODEV/-ENXIO to try and rescue itself from buggy initrd scripts That is how it has worked since we first had script based module requesting which is some years now.