ASoC: sprd: Fix to use list_for_each_entry_safe() when delete items
Since we will remove items off the list using list_del() we need
to use a safe version of the list_for_each_entry() macro aptly named
list_for_each_entry_safe().
Fixes: d7bff893e0
("ASoC: sprd: Add Spreadtrum multi-channel data transfer support")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Reviewed-by: Baolin Wang <baolin.wang@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
7c88b92816
commit
81a812c98b
|
@ -978,12 +978,12 @@ static int sprd_mcdt_probe(struct platform_device *pdev)
|
|||
|
||||
static int sprd_mcdt_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct sprd_mcdt_chan *temp;
|
||||
struct sprd_mcdt_chan *chan, *temp;
|
||||
|
||||
mutex_lock(&sprd_mcdt_list_mutex);
|
||||
|
||||
list_for_each_entry(temp, &sprd_mcdt_chan_list, list)
|
||||
list_del(&temp->list);
|
||||
list_for_each_entry_safe(chan, temp, &sprd_mcdt_chan_list, list)
|
||||
list_del(&chan->list);
|
||||
|
||||
mutex_unlock(&sprd_mcdt_list_mutex);
|
||||
|
||||
|
|
Loading…
Reference in New Issue