Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 30c54df7 authored by Alexander Usyskin's avatar Alexander Usyskin Committed by Greg Kroah-Hartman
Browse files

mei: clear write cb from waiting list on reset



Clear write callbacks sitting in write_waiting list on reset.
Otherwise these callbacks are left dangling and cause memory leak.

Signed-off-by: default avatarAlexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 38dbfb59
Loading
Loading
Loading
Loading
+9 −1
Original line number Original line Diff line number Diff line
@@ -942,8 +942,16 @@ void mei_cl_all_wakeup(struct mei_device *dev)
void mei_cl_all_write_clear(struct mei_device *dev)
void mei_cl_all_write_clear(struct mei_device *dev)
{
{
	struct mei_cl_cb *cb, *next;
	struct mei_cl_cb *cb, *next;
	struct list_head *list;


	list_for_each_entry_safe(cb, next, &dev->write_list.list, list) {
	list = &dev->write_list.list;
	list_for_each_entry_safe(cb, next, list, list) {
		list_del(&cb->list);
		mei_io_cb_free(cb);
	}

	list = &dev->write_waiting_list.list;
	list_for_each_entry_safe(cb, next, list, list) {
		list_del(&cb->list);
		list_del(&cb->list);
		mei_io_cb_free(cb);
		mei_io_cb_free(cb);
	}
	}