summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2011-11-03 20:21:39 +0100
committerChris Mason <chris.mason@oracle.com>2011-11-06 09:09:41 +0100
commit306c8b68c82dfe6b7c9e5b61985760ad5d089205 (patch)
treebf720bdfe5de076d4006bee3c1dfc84d5efcb003 /fs
parentBtrfs: fix extent_buffer leak in the metadata IO error handling (diff)
downloadlinux-306c8b68c82dfe6b7c9e5b61985760ad5d089205.tar.xz
linux-306c8b68c82dfe6b7c9e5b61985760ad5d089205.zip
Btrfs: stop the readahead threads on failed mount
If we don't stop them, they linger around corrupting memory by using pointers to freed things. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/disk-io.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 40a62b980087..e532892431f4 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -2444,6 +2444,7 @@ fail_tree_roots:
fail_sb_buffer:
btrfs_stop_workers(&fs_info->generic_worker);
+ btrfs_stop_workers(&fs_info->readahead_workers);
btrfs_stop_workers(&fs_info->fixup_workers);
btrfs_stop_workers(&fs_info->delalloc_workers);
btrfs_stop_workers(&fs_info->workers);