aboutsummaryrefslogtreecommitdiff
path: root/fs/btrfs/zlib.c
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2009-07-31 14:57:55 -0400
committerChris Mason <chris.mason@oracle.com>2009-07-31 14:57:55 -0400
commit013f1b12f4fc479f697acae2f31bad220162cd03 (patch)
treeb51225aa32f249de352840b31b49eb9799fdafe8 /fs/btrfs/zlib.c
parent6606bb97e146a387932efee263745b7240a11193 (diff)
Btrfs: make sure the async caching thread advances the key
The async caching thread can end up looping forever if a given search puts it at the last key in a leaf. It will end up calling btrfs_next_leaf and then checking if it needs to politely drop the read semaphore. Most of the time this looping isn't noticed because it is able to make progress the next time around. But, during log replay, we wait on the async caching thread to finish, and the async thread is waiting on the commit, and no progress is really made. The fix used here is to copy the key out of the next leaf, that way our search lands there properly. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/zlib.c')
0 files changed, 0 insertions, 0 deletions