Btrfs: Fix usage of struct extent_map->orig_start

This makes sure the orig_start field in struct extent_map gets set
everywhere the extent_map structs are created or modified.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 85841c5..4119f9a 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -244,16 +244,17 @@
 
 			split->start = start + len;
 			split->len = em->start + em->len - (start + len);
-			split->orig_start = em->orig_start;
 			split->bdev = em->bdev;
 			split->flags = flags;
 
 			if (compressed) {
 				split->block_len = em->block_len;
 				split->block_start = em->block_start;
+				split->orig_start = em->orig_start;
 			} else {
 				split->block_len = split->len;
 				split->block_start = em->block_start + diff;
+				split->orig_start = split->start;
 			}
 
 			ret = add_extent_mapping(em_tree, split);