Messages in this thread | | | Date | Thu, 24 Oct 2013 09:17:37 -0200 | From | Henrique de Moraes Holschuh <> | Subject | Re: [PATCH 1/2] firmware, fix request_firmware_nowait() freeze with no uevent |
| |
On Wed, 23 Oct 2013, Prarit Bhargava wrote: > After all this I completely forgot the problem I'm trying to solve here. The > issue is that with HOTPLUG & request_microcode_nowait(), if the microcode image > is not found (that is the file is not found on disk), then EACH cpu waits 1 > minute and it takes 2 hours for a 120 cpu box to load the microcode module.
The proper fix seems to be teaching the concept of negative caching to the microcode core/drivers, as it was pointed out elsewhere in the thread. Negative caching should have a lifetime of "the current update-all-cores request".
This would fix the absurd compound timeout delays, as on most systems it will result in just one timeout (the first one).
That first timeout can be fixed by the user if they disable the userspace firmware loader helper. IMHO that might well be the best choice, as it is already the way forward.
-- "One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh
| |