svn commit: r257267 - stable/9/sys/fs/ext2fs
Pedro F. Giffuni
pfg at FreeBSD.org
Mon Oct 28 19:46:02 UTC 2013
Author: pfg
Date: Mon Oct 28 19:46:01 2013
New Revision: 257267
URL: http://svnweb.freebsd.org/changeset/base/257267
Log:
MFC r255338:
ext2fs: temporarily disable htree directory index.
In addition to our implementation not having workarounds for hash
collisions, it appears we also have a compatibility problem.
For now disable the htree code until we are able to re-examine
both issues.
PR: kern/183230
Modified:
stable/9/sys/fs/ext2fs/ext2_htree.c
stable/9/sys/fs/ext2fs/ext2_lookup.c
Directory Properties:
stable/9/sys/ (props changed)
stable/9/sys/fs/ (props changed)
Modified: stable/9/sys/fs/ext2fs/ext2_htree.c
==============================================================================
--- stable/9/sys/fs/ext2fs/ext2_htree.c Mon Oct 28 19:30:09 2013 (r257266)
+++ stable/9/sys/fs/ext2fs/ext2_htree.c Mon Oct 28 19:46:01 2013 (r257267)
@@ -89,10 +89,12 @@ static int ext2_htree_writebuf(struct ex
int
ext2_htree_has_idx(struct inode *ip)
{
+#ifdef EXT2FS_HTREE
if (EXT2_HAS_COMPAT_FEATURE(ip->i_e2fs, EXT2F_COMPAT_DIRHASHINDEX) &&
ip->i_flags & EXT4_INDEX)
return (1);
else
+#endif
return (0);
}
Modified: stable/9/sys/fs/ext2fs/ext2_lookup.c
==============================================================================
--- stable/9/sys/fs/ext2fs/ext2_lookup.c Mon Oct 28 19:30:09 2013 (r257266)
+++ stable/9/sys/fs/ext2fs/ext2_lookup.c Mon Oct 28 19:46:01 2013 (r257267)
@@ -884,6 +884,7 @@ ext2_direnter(struct inode *ip, struct v
bcopy(cnp->cn_nameptr, newdir.e2d_name, (unsigned)cnp->cn_namelen + 1);
newentrysize = EXT2_DIR_REC_LEN(newdir.e2d_namlen);
+#ifdef EXT2FS_HTREE
if (ext2_htree_has_idx(dp)) {
error = ext2_htree_add_entry(dvp, &newdir, cnp);
if (error) {
@@ -904,6 +905,7 @@ ext2_direnter(struct inode *ip, struct v
return ext2_htree_create_index(dvp, cnp, &newdir);
}
}
+#endif /* EXT2FS_HTREE */
if (dp->i_count == 0) {
/*
More information about the svn-src-stable-9
mailing list