In the Linux kernel, the following vulnerability has been resolved: spi: fix use-after-free of the addlock mutex Commit 6098475d4cb4 ("spi: Fix deadlock when adding SPI controllers on SPI buses") introduced a per-controller mutex. But mutexunlock() of said lock is called after the controller is already freed: spiunregistercontroller(ctlr) -> putdevice(&ctlr->dev) -> spicontrollerrelease(dev) -> mutexunlock(&ctrl->addlock) Move the putdevice() after the mutex_unlock().