Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758207Ab3EWK20 (ORCPT ); Thu, 23 May 2013 06:28:26 -0400 Received: from cantor2.suse.de ([195.135.220.15]:50954 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758053Ab3EWK2Z (ORCPT ); Thu, 23 May 2013 06:28:25 -0400 Date: Thu, 23 May 2013 12:28:45 +0200 Message-ID: From: Takashi Iwai To: anish singh Cc: Ming Lei , Dave Jones , "H. Peter Anvin" , Linux Kernel , x86@kernel.org, fenghua.yu@intel.com Subject: Re: microcode loading got really slow. In-Reply-To: References: <20130521230332.GC12713@redhat.com> <519D1668.6000601@zytor.com> <20130522200012.GA15456@redhat.com> <20130523033911.GA9411@redhat.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/24.2 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2479 Lines: 57 At Thu, 23 May 2013 15:48:52 +0530, anish singh wrote: > > On Thu, May 23, 2013 at 3:46 PM, Takashi Iwai wrote: > > At Thu, 23 May 2013 10:06:56 +0200, > > Takashi Iwai wrote: > >> > >> At Thu, 23 May 2013 15:45:32 +0800, > >> Ming Lei wrote: > >> > > >> > On Thu, May 23, 2013 at 11:39 AM, Dave Jones wrote: > >> > > > On 05/21/2013 04:03 PM, Dave Jones wrote: > >> > > > > >> > > > [ 72.318133] microcode: CPU1 sig=0x306c3, pf=0x2, revision=0x6 > >> > > > [ 132.446449] microcode: CPU2 sig=0x306c3, pf=0x2, revision=0x6 > >> > > > [ 192.573101] microcode: CPU3 sig=0x306c3, pf=0x2, revision=0x6 > >> > > > [ 252.702055] microcode: Microcode Update Driver: v2.00 , Peter Oruba > >> > > > > >> > > > For some reason the events for udev seem to be getting delayed 60s > >> > > > for each core. > >> > > > >> > > Screwed up my .config, and had CONFIG_FW_LOADER_USER_HELPER inadvertantly set > >> > > Odd though that it causes that 60 second delay, given that it's supposedly a > >> > > 'fallback' when the direct loading fails. > >> > > >> > udevd has the ugly problem previously at some situations(for example, > >> > request_firmware called in probe(), and that is why direct loading is > >> > introduced), > >> > but not sure why the direct loading is failed first. > >> > >> The microcode update is optional, so it's no error even if the > >> microcode firmwares are not found. > >> > >> But yes, this seems happening during the module probing. The lines > >> "microcde: CPU..." show before "microcode: Microcode Update > >> Driver...", which means the f/w loading has been done before finishing > >> the module load. > >> > >> I thought (or hoped) this mess (60s stalls) was fixed in the recent > >> udev, but apparently not...? > > > > Thinking on this again, if the user-space continues to be broken in > > that point, we should provide request_firmware() variant without udev, > > e.g. request_firmware_direct(), and use it in known places like this? > Is it not already there?I was thinking that some time back this support > was added. My point is the function that *only* uses the direct loading without fallback to user mode helper. Takashi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/