Message ID | 1463144312-23998-1-git-send-email-thomas.perrot@tupi.fr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, May 13, 2016 at 02:58:32PM +0200, Thomas Perrot wrote: > The lock on the spi bus is never release at the end of call of the function > __spi_pump_messages. So how does this deadlock, in what situations does this trigger? If there were a deadlock that happened every single time we tried to transfer messages I'd expect people would have noticed...
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 0239b45..785080a 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1192,7 +1192,7 @@ static void __spi_pump_messages(struct spi_master *master, bool in_kthread, } out: - if (!bus_locked) + if (bus_locked) mutex_unlock(&master->bus_lock_mutex); /* Prod the scheduler in case transfer_one() was busy waiting */
The lock on the spi bus is never release at the end of call of the function __spi_pump_messages. Signed-off-by: Thomas Perrot <thomas.perrot@tupi.fr> --- drivers/spi/spi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)