summaryrefslogtreecommitdiffstats
path: root/fs/hugetlbfs
diff options
context:
space:
mode:
authorWang Shilong <wangsl.fnst@cn.fujitsu.com>2013-11-20 02:01:52 +0100
committerChris Mason <clm@fb.com>2014-01-28 22:19:43 +0100
commit0647bf564f1e35975e84f152dcba1a1ad54fbe7e (patch)
tree80faa249bbeb1f5482717e1d0938ec2c198d7160 /fs/hugetlbfs
parentBtrfs: fix ordered extent check in btrfs_punch_hole (diff)
downloadlinux-0647bf564f1e35975e84f152dcba1a1ad54fbe7e.tar.xz
linux-0647bf564f1e35975e84f152dcba1a1ad54fbe7e.zip
Btrfs: improve forever loop when doing balance relocation
We hit a forever loop when doing balance relocation,the reason is that we firstly reserve 4M(node size is 16k).and within transaction we will try to add extra reservation for snapshot roots,this will return -EAGAIN if there has been a thread flushing space to reserve space.We will do this again and again with filesystem becoming nearly full. If the above '-EAGAIN' case happens, we try to refill reservation more outsize of transaction, and this will return eariler in enospc case,however, this dosen't really hurt because it makes no sense doing balance relocation with the filesystem nearly full. Miao Xie helped a lot to track this issue, thanks. Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com> Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> Signed-off-by: Josef Bacik <jbacik@fb.com> Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/hugetlbfs')
0 files changed, 0 insertions, 0 deletions