After upgrading my laptop to kernel 4.12 I found that the firmware for
my WiFi card was no longer loaded, rendering the WiFi non-functional.
In the dmesg are (only) these related lines:
[ 6.854609] rtl8723be: Using firmware rtlwifi/rtl8723befw_36.bin
[ 6.854990] rtl8723be 0000:02:00.0: Direct firmware load for
rtlwifi/rtl8723befw_36.bin failed with error -2
[ 6.854993] rtlwifi: Selected firmware is not available
Now, by commit f70e4df2b384d21e36a7c30a591639592692e0ec ("Add code to
read new versions of firmware"), supposedly rtlwifi/rtl8723befw.bin
should be loaded if rtlwifi/rtl8723befw_36.bin is not available, but
that does not actually work.
AFAICS the problem is that request_firmware_nowait() does not wait for
the firmware to show up and returns 0 even if the file is not there, so
the code to load the fallback file will never be reached.
Cheers,
Sven