linux/drivers/misc/habanalabs
Lv Yunlong 115726c5d3 habanalabs/gaudi: Fix a potential use after free in gaudi_memset_device_memory
Our code analyzer reported a uaf.

In gaudi_memset_device_memory, cb is get via hl_cb_kernel_create()
with 2 refcount.
If hl_cs_allocate_job() failed, the execution runs into release_cb
branch. One ref of cb is dropped by hl_cb_put(cb) and could be freed
if other thread also drops one ref. Then cb is used by cb->id later,
which is a potential uaf.

My patch add a variable 'id' to accept the value of cb->id before the
hl_cb_put(cb) is called, to avoid the potential uaf.

Fixes: 423815bf02 ("habanalabs/gaudi: remove PCI access to SM block")
Signed-off-by: Lv Yunlong <lyl2019@mail.ustc.edu.cn>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
2021-05-08 11:36:07 +03:00
..
common habanalabs: wait for interrupt wrong timeout calculation 2021-05-08 11:21:57 +03:00
gaudi habanalabs/gaudi: Fix a potential use after free in gaudi_memset_device_memory 2021-05-08 11:36:07 +03:00
goya habanalabs: expose ASIC specific PLL index 2021-05-08 11:21:57 +03:00
include habanalabs: update to latest F/W communication header 2021-04-09 14:09:25 +03:00
Kconfig misc/habana: Stop using frame_vector helpers 2021-01-12 14:14:53 +01:00
Makefile habanalabs: create common folder 2020-07-24 20:31:37 +03:00