[Ocfs2-tools-devel] Add compress dirs option in fsck.ocfs2

Goldwyn Rodrigues rgoldwyn at gmail.com
Fri Oct 16 09:33:11 PDT 2009


On Tue, Oct 13, 2009 at 03:54:41PM -0700, Joel Becker wrote:
> On Mon, Aug 31, 2009 at 06:47:00PM -0500, Goldwyn Rodrigues wrote:
> > This attempt is after incorporating Joel's comments.
> > 
> > This patch adds the option to compress directories (-D) in fsck.
> > The option compresses the directory entries and consolidates a hole at
> > the end of the directory block. This consolidated hole increases the
> > chance of ocfs2_prepare_dir_for_insert (kmp) to find a hole using
> > ocfs2_find_dir_space_* functions while inserting a new directory entry
> > in the directory.
> > 
> > --- 
> > diff --git a/fsck.ocfs2/fsck.c b/fsck.ocfs2/fsck.c
> > index 74c18ac..57310a9 100644
> > --- a/fsck.ocfs2/fsck.c
> > +++ b/fsck.ocfs2/fsck.c
> > @@ -650,7 +650,7 @@ int main(int argc, char **argv)
> >  	setlinebuf(stderr);
> >  	setlinebuf(stdout);
> >  
> > -	while((c = getopt(argc, argv, "b:B:fFGnuvVyr:")) != EOF) {
> > +	while((c = getopt(argc, argv, "b:B:DfFGnuvVyr:")) != EOF) {
> >  		switch (c) {
> >  			case 'b':
> >  				blkno = read_number(optarg);
> > @@ -675,6 +675,9 @@ int main(int argc, char **argv)
> >  					goto out;
> >  				}
> >  				break;
> > +			case 'D':
> > +				ost->ost_compress_dirs = 1;
> > +				break;
> 
> 	How do you want to handle readonly fsck and fsck -n?  Silently
> ignore it?  Let the user see the errors?  fsck.ocfs2 opens the
> filesystem in readonly mode when you specify '-n'.  So you can't
> actually do the dir compression. 
> 	I think you should fail fsck if the user specified '-D' and
> '-n' at the same time.  It won't work, and it's much less surprising
> than -D silently doing nothing.
> 

Yes, you are right. I will incorporate this and send it across.

Thanks,
-- 
Goldwyn



More information about the Ocfs2-tools-devel mailing list