In the Linux kernel, the following vulnerability has been resolved: spmi: mediatek: Fix UAF on device remove The pmif driver data that contains the clocks is allocated along with spmicontroller. On device remove, spmicontroller will be freed first, and then devres , including the clocks, will be cleanup. This leads to UAF because putting the clocks will access the clocks in the pmif driver data, which is already freed along with spmicontroller. This can be reproduced by enabling DEBUGTESTDRIVERREMOVE and building the kernel with KASAN. Fix the UAF issue by using unmanaged clkbulkget() and putting the clocks before freeing spmi_controller.