On Mon, 2011-01-10 at 19:44 +1100, Dave Chinner wrote:
> From: Dave Chinner <dchinner@xxxxxxxxxx>
> The current kernel code uses radix trees more widely than the
> previous code, so for the next sync we need radix tree support in
> libxfs. Pull the old radix tree code out the xfs_repair git history
> and move it into libxfs to simplify the kernel code sync.
> Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
OK, I actually reviewed this code, even though it had
already been present in the source tree prior to commit:
379397bf9... ("repair: use a btree instead of a radix tree
for the prefetch queue").
And I have some suggestions, and I have at least one
thing that I think is a bug.
I also notice that this code apparently formed the
basis of the kernel's implementation. That's good.
It's probably worth reviewing the kernel version's
history to see if there are any bug fixes that ought
to be brought back into this code (and vice-versa).
All that being said, I think the right thing to do
is to include this change as-is as a commit. It
includes both "radix-tree.c" and "radix-tree.h" as
identical copies of what was removed (though each
now resides in a different directory from before),
thereby preserving the provenance of the code.
Then, after it's committed, I can offer my suggested
changes, or even just implement and propose them
So unless you disagree with this approach I think
it's fine to commit it as you originally posted it.
Reviewed-by: Alex Elder <aelder@xxxxxxx>