State updated:
The deadlock seems to be caused by 2 bugs:
1) Bad error handling in run_delalloc_nocow()
The direct cause is, btrfs_reloc_clone_csums() fails and return -EIO.
Then error handler will call extent_clear_unlock_delalloc() to
clear dirty flag and end writeback of the resting
At 02/07/2017 04:02 PM, Anand Jain wrote:
Hi Qu,
I don't think I have seen this before, I don't know the reason
why I wrote this, may be to test encryption, however it was all
with default options.
Forgot to mention, thanks for the test case.
Or we will never find it.
Thanks,
Qu
But
Hi Anand,
At 02/07/2017 04:02 PM, Anand Jain wrote:
Hi Qu,
I don't think I have seen this before, I don't know the reason
why I wrote this, may be to test encryption, however it was all
with default options.
But now I could reproduce and, looks like balance fails to
start with IO error t
Hi Qu,
I don't think I have seen this before, I don't know the reason
why I wrote this, may be to test encryption, however it was all
with default options.
But now I could reproduce and, looks like balance fails to
start with IO error though the mount is successful.
--
# ta
Hi Anand,
I found that btrfs/125 test case can only pass if we enabled space cache.
If using nospace_cache or space_cache=v2 mount option, it will get
blocked forever with the following callstack(the only blocked process):
[11382.046978] btrfs D11128 6705 6057 0x
[11382.0