]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commit
xfsprogs: Die dir1 Die!
authorDave Chinner <dchinner@redhat.com>
Thu, 9 May 2013 12:22:15 +0000 (07:22 -0500)
committerRich Johnston <rjohnston@sgi.com>
Thu, 9 May 2013 12:22:15 +0000 (07:22 -0500)
commit9a048535fceee3d199978f31524bfd649edaff08
tree3b987b4a37975f4807c8d9ca244f76c7bcb5cf37
parent108e985bc596a1f1a33d31a348fdb430213fb8c0
xfsprogs: Die dir1 Die!

Version 1 directories have never been supported on linux, and we base the
default on pre-Irix 6.2 kernels (~1998). A recent xfs_repair debugging session
on #xfs determined that dir v1 support in xfs_repair has been broken since May
26, 2008 when the ascii case insensitivity support was added to userspace.

Seeing that the code has been broken for roughly 5 years and the first time that
it was noticed was a couple of days ago, it is clearly rarely required, rarely
used and completely untested.

Following the time-honoured X server deprecation model, if it's been broken for
several years and nobody has noticed, then it can and should be removed. So,
rather than trying to fix something we can't test and very, very few people care
about, let's just remove it.

For xfs_repair, some of the checking code is shared with the attribute repair
code. Once all the dirv1 specific code is removed, there isn't a whole lot left,
so move it to attr_repair.c and we can kill the dir.[ch] files completely.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Signed-off-by: Rich Johnston <rjohnston@sgi.com>
32 files changed:
db/Makefile
db/check.c
db/dir.c [deleted file]
db/dir.h [deleted file]
db/dir2.c
db/dir2.h
db/dirshort.c [deleted file]
db/dirshort.h [deleted file]
db/field.c
db/field.h
db/inode.c
db/type.c
db/type.h
estimate/xfs_estimate.c
include/Makefile
include/libxfs.h
include/xfs_dir_leaf.h [deleted file]
include/xfs_dir_sf.h [deleted file]
libxfs/init.c
logprint/log_misc.c
repair/Makefile
repair/attr_repair.c
repair/dino_chunks.c
repair/dinode.c
repair/dir.c [deleted file]
repair/dir.h [deleted file]
repair/dir2.c
repair/dir2.h
repair/init.c
repair/phase4.c
repair/phase6.c
repair/prefetch.c