]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: return ENOSPC when target space is full
authorFilipe David Borba Manana <fdmanana@gmail.com>
Mon, 5 Aug 2013 15:25:12 +0000 (16:25 +0100)
committerChris Mason <chris.mason@fusionio.com>
Sun, 1 Sep 2013 12:04:55 +0000 (08:04 -0400)
commite63965bd1b868ce39a8eabaa70f64bbf18fc86ce
treec541ed0dc8707e9b5a183b637e7eb58a1306095c
parent365e059c4d94d74abc72306c1deb5b6a9a5147e3
Btrfs: return ENOSPC when target space is full

In extent-tree.c:do_chunk_alloc(), early on we returned 0 (success)
when the target space was full and when chunk allocation is needed.
However, later on in that same function we return ENOSPC if
btrfs_alloc_chunk() fails (and chunk allocation was needed) and
set the space's full flag.

This was inconsistent, as -ENOSPC should be returned if the space
is full and a chunk allocation needs to performed. If the space is
full but no chunk allocation is needed, just return 0 (success).

Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/extent-tree.c