Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6e3b9666 authored by Yan's avatar Yan Committed by Chris Mason
Browse files

Off by one fix for btrfs_drop_extents



One of my old patches introduces a new bug to
btrfs_drop_extents(changeset 275). Inline extents are not truncated
properly when "extent_end == end", it can trigger the BUG_ON at
file.c:600.  I hope I don't introduce new bug this time.

---

Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
parent f6dbff55
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -481,8 +481,9 @@ int btrfs_drop_extents(struct btrfs_trans_handle *trans,
			search_start = (extent_end + mask) & ~mask;
		} else
			search_start = extent_end;
		if (end < extent_end && start > key.offset && found_inline) {
		if (end <= extent_end && start >= key.offset && found_inline) {
			*hint_byte = EXTENT_MAP_INLINE;
			continue;
		}
		if (end < extent_end && end >= key.offset) {
			if (found_extent) {