diff options
author | Filipe David Borba Manana <fdmanana@gmail.com> | 2014-01-30 13:27:12 +0000 |
---|---|---|
committer | Josef Bacik <jbacik@fb.com> | 2014-03-10 15:15:40 -0400 |
commit | d86477b303da51832002eec1cdec2938c42fccc3 (patch) | |
tree | c8723eec6df985996ca5fbcba168adc2ed350b71 /fs/btrfs/send.c | |
parent | c404e0dc2c843b154f9a36c3aec10d0a715d88eb (diff) | |
download | lwn-d86477b303da51832002eec1cdec2938c42fccc3.tar.gz lwn-d86477b303da51832002eec1cdec2938c42fccc3.zip |
Btrfs: add missing error check in incremental send
Function wait_for_parent_move() returns negative value if an error
happened, 0 if we don't need to wait for the parent's move, and
1 if the wait is needed.
Before this change an error return value was being treated like the
return value 1, which was not correct.
Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com>
Signed-off-by: Josef Bacik <jbacik@fb.com>
Diffstat (limited to 'fs/btrfs/send.c')
-rw-r--r-- | fs/btrfs/send.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/btrfs/send.c b/fs/btrfs/send.c index 9dde9717c1b9..70272e1d2b1e 100644 --- a/fs/btrfs/send.c +++ b/fs/btrfs/send.c @@ -3227,7 +3227,10 @@ verbose_printk("btrfs: process_recorded_refs %llu\n", sctx->cur_ino); * dirs, we always have one new and one deleted * ref. The deleted ref is ignored later. */ - if (wait_for_parent_move(sctx, cur)) { + ret = wait_for_parent_move(sctx, cur); + if (ret < 0) + goto out; + if (ret) { ret = add_pending_dir_move(sctx, cur->dir); *pending_move = 1; |