From: Chris Mason Date: Thu, 24 Apr 2008 14:18:25 +0000 (-0400) Subject: Keep more pointers free in the nodes for double splits X-Git-Tag: upstream/0.20.rc1~276 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d8ecd9205a5af776cb77e0c153eaf4dd4cb703dd;hp=3ce95795030eca164c1a78dae013c78a65602b43;p=platform%2Fupstream%2Fbtrfs-progs.git Keep more pointers free in the nodes for double splits --- diff --git a/ctree.c b/ctree.c index eea7936..184d842 100644 --- a/ctree.c +++ b/ctree.c @@ -1107,7 +1107,7 @@ again: slot -= 1; p->slots[level] = slot; if (ins_len > 0 && btrfs_header_nritems(b) >= - BTRFS_NODEPTRS_PER_BLOCK(root) - 1) { + BTRFS_NODEPTRS_PER_BLOCK(root) - 3) { int sret = split_node(trans, root, p, level); BUG_ON(sret > 0); if (sret) @@ -1446,7 +1446,7 @@ static int split_node(struct btrfs_trans_handle *trans, struct btrfs_root ret = push_nodes_for_insert(trans, root, path, level); c = path->nodes[level]; if (!ret && btrfs_header_nritems(c) < - BTRFS_NODEPTRS_PER_BLOCK(root) - 1) + BTRFS_NODEPTRS_PER_BLOCK(root) - 3) return 0; if (ret < 0) return ret;