In the Linux kernel, the following vulnerability has been resolved:
Input: iforce - wake up after clearing IFORCEXMITRUNNING flag
syzbot is reporting hung task at _inputunregisterdevice() [1], for iforceclose() waiting at waiteventinterruptible() with dev->mutex held is blocking inputdisconnectdevice() from _inputunregister_device().
It seems that the cause is simply that commit c2b27ef672992a20 ("Input: iforce - wait for command completion when closing the device") forgot to call wakeup() after clearbit().
Fix this problem by introducing a helper that calls clearbit() followed by wakeup_all().