mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
power: sequencing: fix NULL-pointer dereference in pwrseq_unit_new()
If memory allocation fails in pwrseq_unit_setup_deps(), pwrseq_unit_put()
is called to release the partially initialized unit. However, we've
never initialized unit->list and pwrseq_unit_release() will
unconditionally call list_del() on it. Initialize unit->list right after
allocating the unit struct.
Fixes: 249ebf3f65 ("power: sequencing: implement the pwrseq core")
Cc: stable@vger.kernel.org
Reported-by: sashiko-bot <sashiko-bot@kernel.org>
Closes: https://sashiko.dev/#/patchset/20260903-pwrseq-kunit-v1-0-1f893d2cabc2%40oss.qualcomm.com?part=1
Link: https://patch.msgid.link/20260909-pwrseq-kunit-v2-2-ef496afc89d2@oss.qualcomm.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
This commit is contained in:
parent
5f90f85eae
commit
115b303e8e
|
|
@ -101,6 +101,7 @@ static struct pwrseq_unit *pwrseq_unit_new(const struct pwrseq_unit_data *data)
|
|||
}
|
||||
|
||||
kref_init(&unit->ref);
|
||||
INIT_LIST_HEAD(&unit->list);
|
||||
INIT_LIST_HEAD(&unit->deps);
|
||||
unit->enable = data->enable;
|
||||
unit->disable = data->disable;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user