#include "print-tree.h"
int keep_running = 1;
+struct ctree_super_block super;
static int setup_key(struct radix_tree_root *root, struct key *key, int exists)
{
return -1;
}
-static int run_commit(struct ctree_root *root, struct radix_tree_root *radix)
-{
- return commit_transaction(root);
-}
-
static int insert_dup(struct ctree_root *root, struct radix_tree_root *radix)
{
struct ctree_path path;
goto out;
}
if (i % 1000 == 0) {
- ret = commit_transaction(root);
+ ret = commit_transaction(root, &super);
if (ret) {
fprintf(stderr, "fill commit failed\n");
return ret;
static int bulk_op(struct ctree_root *root, struct radix_tree_root *radix)
{
int ret;
- int nr = rand() % 20000;
+ int nr = rand() % 5000;
static int run_nr = 0;
/* do the bulk op much less frequently */
int (*ops[])(struct ctree_root *root, struct radix_tree_root *radix) =
{ ins_one, insert_dup, del_one, lookup_item,
- lookup_enoent, bulk_op, run_commit };
+ lookup_enoent, bulk_op };
static int fill_radix(struct ctree_root *root, struct radix_tree_root *radix)
{
int main(int ac, char **av)
{
RADIX_TREE(radix, GFP_KERNEL);
- struct ctree_super_block super;
struct ctree_root *root;
int i;
int ret;
printf("open & close, root level %d nritems %d\n",
node_level(root->node->node.header.flags),
root->node->node.header.nritems);
- write_ctree_super(root, &super);
- close_ctree(root);
+ close_ctree(root, &super);
root = open_ctree("dbfile", &super);
}
while(count--) {
err = ret;
goto out;
}
- if (ops[op] == bulk_op || ops[op] == run_commit)
+ if (ops[op] == bulk_op)
break;
if (keep_running == 0) {
err = 0;
}
}
out:
- write_ctree_super(root, &super);
- close_ctree(root);
+ close_ctree(root, &super);
return err;
}