[Ocfs2-tools-devel] [PATCH]: Add removing slots support for ocfs2-tools

tao.ma tao.ma at oracle.com
Sun Jun 10 23:03:05 PDT 2007


Sunil Mushran wrote:
> As far as relink_system_alloc() goes, my concern is that we don't
> balance the chains in move chain. We want the inode_alloc (and ext_alloc)
> chains to have the same number of groups, with the one off exception.
>
> Also, it may be easier if we move chains from bottom up.
>
> relink_system_alloc()
> for (i = cl->cl_next_free_rec - 1; i >= 0; i--) {
> ...
> move_chain_rec();
> }
>
> Also, means move_groups() will need a overhaul.
>
> We'll first have to identify the chain to start adding to. As in,
> first see if the cl_next_free_rec < cl_count. If so, start with
> cl_next_free_rec and add one group to each chain in a circular
> order. If cl_next_free_rec == cl_count, then scan cr->c_total
> and pick the chain in which the number is less than the preceding one.
> If all have the same, then start with 0.
>
> Yes, we need to do this to avoid performance problems in the fs.
> The fs assumes all chains are balanced.
em... OK.
The calculation of the new slot is easy. The most complex thing is how 
to move them and how to make fsck work comfortable and the code 
shouldn't be too complicated for others to understand. :)
I have finished the work of coding for this new mechanism will do the 
long-term test this night.

>
> =============
>
> Rest looks good.
What do you mean the "rest"?;) All the patches include the three patches 
in fsck.ocfs2?
If yes, I may reorganize the patch series(include all your advice and 
the new moving mechanism) and send out again.

Yours,
Tao



More information about the Ocfs2-tools-devel mailing list