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

Commit ab550209 authored by Karthikeyan Mani's avatar Karthikeyan Mani Committed by Gerrit - the friendly Code Review server
Browse files

ASoC: soundwire: Add support for rmmod of swr-wcd-ctrl



Cleanup remove functions from double free issues.

CRs-fixed: 2092930
Change-Id: Ib1eec8ed15408f79b7f797bc0c8868d44176ebe5
Signed-off-by: default avatarKarthikeyan Mani <kmani@codeaurora.org>
parent f272525e
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -79,11 +79,16 @@ void swr_remove_device(struct swr_device *swr_dev)
{
	struct swr_device *swr_dev_loop, *safe;

	/*
	 * master still has reference to all nodes and deletes
	 * at platform_unregister, so need to init the deleted
	 * entry
	 */
	list_for_each_entry_safe(swr_dev_loop, safe,
				 &swr_dev->master->devices,
				 dev_list) {
		if (swr_dev == swr_dev_loop)
			list_del(&swr_dev_loop->dev_list);
			list_del_init(&swr_dev_loop->dev_list);
	}
}
EXPORT_SYMBOL(swr_remove_device);
@@ -789,9 +794,7 @@ static void swr_unregister_device(struct swr_device *swr)

static void swr_master_release(struct device *dev)
{
	struct swr_master *master = to_swr_master(dev);

	kfree(master);
	/* kfree of master done at swrm_remove of device */
}

#define swr_master_attr_gr NULL