]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: only reserve space in fallocate if we have to do a preallocate
authorJosef Bacik <josef@redhat.com>
Wed, 17 Aug 2011 14:19:52 +0000 (10:19 -0400)
committerJosef Bacik <josef@redhat.com>
Wed, 19 Oct 2011 19:12:36 +0000 (15:12 -0400)
commit316a03ef61d9ee7046b419902a51903c1861fcaa
treeefdff83971345340faaf57823c0316962445a458
parent2b7bb3821c639a9fb3d662a19a5cd709af3a1969
Btrfs: only reserve space in fallocate if we have to do a preallocate

Lukas found a problem where if he tries to fallocate over the same region twice
and the first fallocate took up all the space we would fail with ENOSPC.  This
is because we reserve the total space we want to use for fallocate, regardless
of wether or not we will have to actually preallocate.  So instead move the
check into the loop where we actually have to do the preallocate.  Thanks,

Tested-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Josef Bacik <josef@redhat.com>
fs/btrfs/file.c