summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/file.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2010-02-20 13:53:16 -0800
committerDavid S. Miller <davem@davemloft.net>2010-02-20 13:53:16 -0800
commit198d2f63a6096fe575b696b13ba61b62c620266f (patch)
treed0c2b0697370cc670029cd1eb2a80c35c71eac60 /fs/btrfs/file.c
parent0da2b300b91ddeb9944c3fb4faaf78c1c482c0af (diff)
parent1f474646fdc36b457606bbcd6a3592e6cbd31ac4 (diff)
downloadkernel-crypto-198d2f63a6096fe575b696b13ba61b62c620266f.tar.gz
kernel-crypto-198d2f63a6096fe575b696b13ba61b62c620266f.tar.xz
kernel-crypto-198d2f63a6096fe575b696b13ba61b62c620266f.zip
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Diffstat (limited to 'fs/btrfs/file.c')
-rw-r--r--fs/btrfs/file.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 9d080962996..6ed434ac037 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -720,13 +720,15 @@ again:
inode->i_ino, orig_offset);
BUG_ON(ret);
}
- fi = btrfs_item_ptr(leaf, path->slots[0],
- struct btrfs_file_extent_item);
if (del_nr == 0) {
+ fi = btrfs_item_ptr(leaf, path->slots[0],
+ struct btrfs_file_extent_item);
btrfs_set_file_extent_type(leaf, fi,
BTRFS_FILE_EXTENT_REG);
btrfs_mark_buffer_dirty(leaf);
} else {
+ fi = btrfs_item_ptr(leaf, del_slot - 1,
+ struct btrfs_file_extent_item);
btrfs_set_file_extent_type(leaf, fi,
BTRFS_FILE_EXTENT_REG);
btrfs_set_file_extent_num_bytes(leaf, fi,