I got an issue in reboot pressure test,reboot command called by user first,all userspace task has been killed,then a kworker thread grab cpu then invoking request_firmware,but since uevent thread has been killed,request_firmware will never load successfully,blocked in "wait_for_completion_killable_timeout" ,before wait complete,this thread has calling usermodehelper_read_trylock and held "umhelper_sem" lock,at this time,init reboot continue to running,try to __usermodehelper_disable,this needs hold umhelper_sem,but it's held by kworker,casue reboot process blocked until request_firmware timeout and release umhelper_sem,if timeout not be setting,this timeout maybe MAX_JIFFY_OFFSET,so i think it's a risk.
Created attachment 287527 [details] trace and sequence analysis
So it seem that We need to fix request_firmware() to be able to handle the reboot case. This is not an ACPI issue anyway. I can not find out a category for the driver/base/firmware_loader issues, so I'd suggest you to send an email to lkml about this problem and hopefully you will get some help there. Bug closed. Please feel free to reopen it if you still have any questions.