]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
can: raw: add missing refcount for memory leak fix
authorOliver Hartkopp <socketcan@hartkopp.net>
Mon, 21 Aug 2023 14:45:47 +0000 (16:45 +0200)
committerJakub Kicinski <kuba@kernel.org>
Wed, 23 Aug 2023 00:18:50 +0000 (17:18 -0700)
commitc275a176e4b69868576e543409927ae75e3a3288
tree56450b459d4dbd7addb5684ac6d5b90650a1bfd7
parent0bfe71159230bab79ee230225ae12ffecbb69f3e
can: raw: add missing refcount for memory leak fix

Commit ee8b94c8510c ("can: raw: fix receiver memory leak") introduced
a new reference to the CAN netdevice that has assigned CAN filters.
But this new ro->dev reference did not maintain its own refcount which
lead to another KASAN use-after-free splat found by Eric Dumazet.

This patch ensures a proper refcount for the CAN nedevice.

Fixes: ee8b94c8510c ("can: raw: fix receiver memory leak")
Reported-by: Eric Dumazet <edumazet@google.com>
Cc: Ziyang Xuan <william.xuanziyang@huawei.com>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Link: https://lore.kernel.org/r/20230821144547.6658-3-socketcan@hartkopp.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/can/raw.c