Re: microcode loading got really slow.

From: anish singh
Date: Thu May 23 2013 - 06:18:58 EST


On Thu, May 23, 2013 at 3:46 PM, Takashi Iwai <tiwai@xxxxxxx> 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 <davej@xxxxxxxxxx> 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 <tigran@xxxxxxxxxxxxxxxxxxxx>, 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.
>
>
> Takashi
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/