Kernel Bug Tracker – Bug 1198
loop deadlock on block-backed writes
Last modified: 2005-11-17 00:09:56 UTC
Block-backed loop devices can cause a deadlock.
How to reproduce:
You need ~100mb partition.
Boot with mem=32m (otherwise the cache will be to big in the most cases)
losetup /dev/loop0 /dev/hdXX
for i in `seq 1 10`; do
dd if=/dev/zero of=/dev/loop0 &
Now the box "should" freeze. This doesn't happen with filebased read/write
or blockbased read. Jari's loop survives this stress test without problems.
So probably we should continue with merging his loop changes.
This is likely because blockbased writes take a different way through loop.c,
just have a look.
Is this still a bug in recent kernels, like 2.6.14?
I'm not interested to test (the initial report was in 2003). I switched over to
dm-crypt long time ago. Linux kernel bug tracking is a total mess and below all
standard seen elsewhere.
However, thanks for asking.