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

Commit 71ad7802 authored by yangerkun's avatar yangerkun Committed by Greg Kroah-Hartman
Browse files

spi: unbinding slave before calling spi_destroy_queue



We make a mistake while backport 'commit 84855678add8 ("spi: Fix
controller unregister order")'. What we should do is call __unreigster
for each device before spi_destroy_queue. This problem exist in
linux-4.4.y/linux-4.9.y.

Signed-off-by: default avataryangerkun <yangerkun@huawei.com>
parent 265e6dc0
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1917,13 +1917,13 @@ static int __unregister(struct device *dev, void *null)
 */
void spi_unregister_master(struct spi_master *master)
{
	device_for_each_child(&master->dev, NULL, __unregister);

	if (master->queued) {
		if (spi_destroy_queue(master))
			dev_err(&master->dev, "queue remove failed\n");
	}

	device_for_each_child(&master->dev, NULL, __unregister);

	mutex_lock(&board_lock);
	list_del(&master->list);
	mutex_unlock(&board_lock);