Commit 77ce6846 authored by Chris Mason's avatar Chris Mason Committed by David Woodhouse

Btrfs: period commit during initial fill in the random tester

Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
parent f0930a37
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
#include "disk-io.h" #include "disk-io.h"
static int allocated_blocks = 0; static int allocated_blocks = 0;
int cache_size = 0;
int cache_max = 10000; int cache_max = 10000;
static int check_tree_block(struct ctree_root *root, struct tree_buffer *buf) static int check_tree_block(struct ctree_root *root, struct tree_buffer *buf)
...@@ -36,7 +35,7 @@ static int free_some_buffers(struct ctree_root *root) ...@@ -36,7 +35,7 @@ static int free_some_buffers(struct ctree_root *root)
list_del_init(&b->cache); list_del_init(&b->cache);
tree_block_release(root, b); tree_block_release(root, b);
if (root->cache_size < cache_max) if (root->cache_size < cache_max)
return 0; break;
} }
} }
return 0; return 0;
......
...@@ -202,15 +202,23 @@ static int fill_tree(struct ctree_root *root, struct radix_tree_root *radix, ...@@ -202,15 +202,23 @@ static int fill_tree(struct ctree_root *root, struct radix_tree_root *radix,
int count) int count)
{ {
int i; int i;
int err;
int ret = 0; int ret = 0;
for (i = 0; i < count; i++) { for (i = 0; i < count; i++) {
ret = ins_one(root, radix); ret = ins_one(root, radix);
if (ret) { if (ret) {
printf("fill failed\n"); fprintf(stderr, "fill failed\n");
err = ret;
goto out; goto out;
} }
if (i % 1000 == 0) {
ret = commit_transaction(root);
if (ret) {
fprintf(stderr, "fill commit failed\n");
return ret;
}
}
if (i % 10000 == 0) {
printf("bigfill %d\n", i);
}
if (!keep_running) if (!keep_running)
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment