In the Linux kernel, the following vulnerability has been resolved: media: venus: fix use after free bug in venus_remove due to race condition in venus_probe, core->work is bound with venus_sys_error_handler, which is used to handle error. The code use core->sys_err_done to make sync work. The core->work is started in venus_event_notify. If we call venus_remove, there might be an unfished work. The possible sequence is as follows: CPU0 CPU1 |venus_sys_error_handler venus_remove | hfi_destroy | venus_hfi_destroy | kfree(hdev); | |hfi_reinit |venus_hfi_queues_reinit |//use hdev Fix it by canceling the work in venus_remove.
https://git.kernel.org/stable/c/d925e9f7fb5a2dbefd1a73fc01061f38c7becd4c
https://git.kernel.org/stable/c/c5a85ed88e043474161bbfe54002c89c1cb50ee2
https://git.kernel.org/stable/c/bf6be32e2d39f6301ff1831e249d32a8744ab28a
https://git.kernel.org/stable/c/b0686aedc5f1343442d044bd64eeac7e7a391f4e
https://git.kernel.org/stable/c/63bbe26471ebdcc3c20bb4cc3950d666279ad658
https://git.kernel.org/stable/c/60b6968341a6dd5353554f3e72db554693a128a5
https://git.kernel.org/stable/c/5098b9e6377577fe13d03e1d8914930f014a3314
https://git.kernel.org/stable/c/2a541fcc0bd2b05a458e9613376df1289ec11621
https://git.kernel.org/stable/c/10941d4f99a5a34999121b314afcd9c0a1c14f15