]> git.itanic.dy.fi Git - linux-stable/commit
peci: cpu: Fix use-after-free in adev_release()
authorIwona Winiarska <iwona.winiarska@intel.com>
Tue, 5 Jul 2022 10:15:01 +0000 (12:15 +0200)
committerIwona Winiarska <iwona.winiarska@intel.com>
Mon, 15 Aug 2022 18:31:35 +0000 (20:31 +0200)
commit1c11289b34ab67ed080bbe0f1855c4938362d9cf
tree710ed11c919133f7bfdc33d0a523f5d1730567b1
parente79b548b7202bb3accdfe64f113129a4340bc2f9
peci: cpu: Fix use-after-free in adev_release()

When auxiliary_device_add() returns an error, auxiliary_device_uninit()
is called, which causes refcount for device to be decremented and
.release callback will be triggered.

Because adev_release() re-calls auxiliary_device_uninit(), it will cause
use-after-free:
[ 1269.455172] WARNING: CPU: 0 PID: 14267 at lib/refcount.c:28 refcount_warn_saturate+0x110/0x15
[ 1269.464007] refcount_t: underflow; use-after-free.

Reported-by: Jianglei Nie <niejianglei2021@163.com>
Signed-off-by: Iwona Winiarska <iwona.winiarska@intel.com>
Link: https://lore.kernel.org/r/20220705101501.298395-1-iwona.winiarska@intel.com
drivers/peci/cpu.c