Impact: Right now whenever the bcache module gets loaded, we can see softlockup warnings caused by the writeback thread.
Fix: A patch picked from 3.17-rc1 will avoid those warnings. I bundled this with one patch from upstream that avoids a crash on shutdown, which is also caused by the fact that the writeback thread is not always started now. A third patch which was sent upstream addresses the same crash when modifying the writeback_running sysfs variable. This also adds a check for the writeback thread to be running.
Testcase(s): Define caching and backing device with (bcache-tools):
make-bcache -B <backing dev> -C <cache dev>
This will trigger the hung task after a while.
echo 0 >/sys/block/bcache0/bcache/writeback_running
This will trigger a kernel BUG. Both issues are gone with the patch series applied.
SRU Justification:
Impact: Right now whenever the bcache module gets loaded, we can see softlockup warnings caused by the writeback thread.
Fix: A patch picked from 3.17-rc1 will avoid those warnings. I bundled this with one patch from upstream that avoids a crash on shutdown, which is also caused by the fact that the writeback thread is not always started now. A third patch which was sent upstream addresses the same crash when modifying the writeback_running sysfs variable. This also adds a check for the writeback thread to be running.
Testcase(s): Define caching and backing device with (bcache-tools): bcache0/ bcache/ writeback_ running
make-bcache -B <backing dev> -C <cache dev>
This will trigger the hung task after a while.
echo 0 >/sys/block/
This will trigger a kernel BUG. Both issues are gone with the patch series applied.