Bug in in spi-bcm53xx (rcu_sched) exposed by 0461a41 ("spi: Pump transfers inside calling context for spi_sync()")

From: Rafał Miłecki <hidden>
Date: 2016-02-10 12:21:04

Hi,

I recently tried few recent kernels and found out that spi-bcm53xx
fails (rcu_sched) with them. I knew it was working OK with 3.18, so I
tried newer ones one by one and discovered it's a 4.0 regression.
Bisecting pointed following commit:

commit 0461a4149836c792d186027c8c859637a4cfb11a
Author: Mark Brown [off-list ref]
Date:   Tue Dec 9 21:38:05 2014 +0000

    spi: Pump transfers inside calling context for spi_sync()

I also confirmed that reverting two commits:
spi: Only idle the message pump in the worker kthread
spi: Pump transfers inside calling context for spi_sync()
from top of 4.0.9 (clean), 4.1.16 (clean) and 4.4 (manual) fixes
(workarounds) that issue for me.

Unfortunately the bug in spi-bcm53xx isn't obvious for me. I kept
looking at its code for a bit but couldn't find anything.

Knowing the commit that exposed this bug, does it give you any hint
what may be wrong with spi-bcm53xx?

-- 
Rafał

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help