diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c index 3786eca2a905f821047d21cb3eb7b092024c1e9f..a85b044cf39e79dd48babb9f8bbb4b2908d4e3dd 100644 --- a/fs/btrfs/file.c +++ b/fs/btrfs/file.c @@ -608,6 +608,8 @@ int btrfs_mark_extent_written(struct btrfs_trans_handle *trans, key.offset = split; ret = btrfs_search_slot(trans, root, &key, path, -1, 1); + if (ret < 0) + goto out; if (ret > 0 && path->slots[0] > 0) path->slots[0]--;