Commit 4074fe3736b1a43431dff870bf9055ac5dcf3f03
Committed by
Theodore Ts'o
1 parent
f077d0d7ea
Exists in
master
and in
7 other branches
ext4: remove #ifdef CONFIG_EXT4_INDEX
CONFIG_EXT4_INDEX is not an exposed config option in the kernel, and it is unconditionally defined in ext4_fs.h. tune2fs is already able to turn off dir indexing, so at this point it's just cluttering up the code. Remove it. Signed-off-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Mingming Cao <cmm@us.ibm.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Showing 3 changed files with 2 additions and 39 deletions Side-by-side Diff
fs/ext4/dir.c
... | ... | @@ -47,9 +47,7 @@ |
47 | 47 | .compat_ioctl = ext4_compat_ioctl, |
48 | 48 | #endif |
49 | 49 | .fsync = ext4_sync_file, /* BKL held */ |
50 | -#ifdef CONFIG_EXT4_INDEX | |
51 | 50 | .release = ext4_release_dir, |
52 | -#endif | |
53 | 51 | }; |
54 | 52 | |
55 | 53 | |
... | ... | @@ -107,7 +105,6 @@ |
107 | 105 | |
108 | 106 | sb = inode->i_sb; |
109 | 107 | |
110 | -#ifdef CONFIG_EXT4_INDEX | |
111 | 108 | if (EXT4_HAS_COMPAT_FEATURE(inode->i_sb, |
112 | 109 | EXT4_FEATURE_COMPAT_DIR_INDEX) && |
113 | 110 | ((EXT4_I(inode)->i_flags & EXT4_INDEX_FL) || |
... | ... | @@ -123,7 +120,6 @@ |
123 | 120 | */ |
124 | 121 | EXT4_I(filp->f_path.dentry->d_inode)->i_flags &= ~EXT4_INDEX_FL; |
125 | 122 | } |
126 | -#endif | |
127 | 123 | stored = 0; |
128 | 124 | offset = filp->f_pos & (sb->s_blocksize - 1); |
129 | 125 | |
... | ... | @@ -232,7 +228,6 @@ |
232 | 228 | return ret; |
233 | 229 | } |
234 | 230 | |
235 | -#ifdef CONFIG_EXT4_INDEX | |
236 | 231 | /* |
237 | 232 | * These functions convert from the major/minor hash to an f_pos |
238 | 233 | * value. |
... | ... | @@ -518,6 +513,4 @@ |
518 | 513 | |
519 | 514 | return 0; |
520 | 515 | } |
521 | - | |
522 | -#endif |
fs/ext4/namei.c
... | ... | @@ -144,7 +144,6 @@ |
144 | 144 | u16 size; |
145 | 145 | }; |
146 | 146 | |
147 | -#ifdef CONFIG_EXT4_INDEX | |
148 | 147 | static inline unsigned dx_get_block (struct dx_entry *entry); |
149 | 148 | static void dx_set_block (struct dx_entry *entry, unsigned value); |
150 | 149 | static inline unsigned dx_get_hash (struct dx_entry *entry); |
151 | 150 | |
... | ... | @@ -766,9 +765,7 @@ |
766 | 765 | dx_set_block(new, block); |
767 | 766 | dx_set_count(entries, count + 1); |
768 | 767 | } |
769 | -#endif | |
770 | 768 | |
771 | - | |
772 | 769 | static void ext4_update_dx_flag(struct inode *inode) |
773 | 770 | { |
774 | 771 | if (!EXT4_HAS_COMPAT_FEATURE(inode->i_sb, |
... | ... | @@ -869,7 +866,6 @@ |
869 | 866 | name = dentry->d_name.name; |
870 | 867 | if (namelen > EXT4_NAME_LEN) |
871 | 868 | return NULL; |
872 | -#ifdef CONFIG_EXT4_INDEX | |
873 | 869 | if (is_dx(dir)) { |
874 | 870 | bh = ext4_dx_find_entry(dentry, res_dir, &err); |
875 | 871 | /* |
... | ... | @@ -881,7 +877,6 @@ |
881 | 877 | return bh; |
882 | 878 | dxtrace(printk("ext4_find_entry: dx failed, falling back\n")); |
883 | 879 | } |
884 | -#endif | |
885 | 880 | nblocks = dir->i_size >> EXT4_BLOCK_SIZE_BITS(sb); |
886 | 881 | start = EXT4_I(dir)->i_dir_start_lookup; |
887 | 882 | if (start >= nblocks) |
... | ... | @@ -957,7 +952,6 @@ |
957 | 952 | return ret; |
958 | 953 | } |
959 | 954 | |
960 | -#ifdef CONFIG_EXT4_INDEX | |
961 | 955 | static struct buffer_head * ext4_dx_find_entry(struct dentry *dentry, |
962 | 956 | struct ext4_dir_entry_2 **res_dir, int *err) |
963 | 957 | { |
... | ... | @@ -1025,7 +1019,6 @@ |
1025 | 1019 | dx_release (frames); |
1026 | 1020 | return NULL; |
1027 | 1021 | } |
1028 | -#endif | |
1029 | 1022 | |
1030 | 1023 | static struct dentry *ext4_lookup(struct inode * dir, struct dentry *dentry, struct nameidata *nd) |
1031 | 1024 | { |
... | ... | @@ -1121,7 +1114,6 @@ |
1121 | 1114 | de->file_type = ext4_type_by_mode[(mode & S_IFMT)>>S_SHIFT]; |
1122 | 1115 | } |
1123 | 1116 | |
1124 | -#ifdef CONFIG_EXT4_INDEX | |
1125 | 1117 | /* |
1126 | 1118 | * Move count entries from end of map between two memory locations. |
1127 | 1119 | * Returns pointer to last entry moved. |
1128 | 1120 | |
... | ... | @@ -1266,9 +1258,7 @@ |
1266 | 1258 | *error = err; |
1267 | 1259 | return NULL; |
1268 | 1260 | } |
1269 | -#endif | |
1270 | 1261 | |
1271 | - | |
1272 | 1262 | /* |
1273 | 1263 | * Add a new entry into a directory (leaf) block. If de is non-NULL, |
1274 | 1264 | * it points to a directory entry which is guaranteed to be large |
... | ... | @@ -1364,7 +1354,6 @@ |
1364 | 1354 | return 0; |
1365 | 1355 | } |
1366 | 1356 | |
1367 | -#ifdef CONFIG_EXT4_INDEX | |
1368 | 1357 | /* |
1369 | 1358 | * This converts a one block unindexed directory to a 3 block indexed |
1370 | 1359 | * directory, and adds the dentry to the indexed directory. |
... | ... | @@ -1443,7 +1432,6 @@ |
1443 | 1432 | |
1444 | 1433 | return add_dirent_to_buf(handle, dentry, inode, de, bh); |
1445 | 1434 | } |
1446 | -#endif | |
1447 | 1435 | |
1448 | 1436 | /* |
1449 | 1437 | * ext4_add_entry() |
1450 | 1438 | |
... | ... | @@ -1464,9 +1452,7 @@ |
1464 | 1452 | struct ext4_dir_entry_2 *de; |
1465 | 1453 | struct super_block * sb; |
1466 | 1454 | int retval; |
1467 | -#ifdef CONFIG_EXT4_INDEX | |
1468 | 1455 | int dx_fallback=0; |
1469 | -#endif | |
1470 | 1456 | unsigned blocksize; |
1471 | 1457 | u32 block, blocks; |
1472 | 1458 | |
... | ... | @@ -1474,7 +1460,6 @@ |
1474 | 1460 | blocksize = sb->s_blocksize; |
1475 | 1461 | if (!dentry->d_name.len) |
1476 | 1462 | return -EINVAL; |
1477 | -#ifdef CONFIG_EXT4_INDEX | |
1478 | 1463 | if (is_dx(dir)) { |
1479 | 1464 | retval = ext4_dx_add_entry(handle, dentry, inode); |
1480 | 1465 | if (!retval || (retval != ERR_BAD_DX_DIR)) |
... | ... | @@ -1483,7 +1468,6 @@ |
1483 | 1468 | dx_fallback++; |
1484 | 1469 | ext4_mark_inode_dirty(handle, dir); |
1485 | 1470 | } |
1486 | -#endif | |
1487 | 1471 | blocks = dir->i_size >> sb->s_blocksize_bits; |
1488 | 1472 | for (block = 0, offset = 0; block < blocks; block++) { |
1489 | 1473 | bh = ext4_bread(handle, dir, block, 0, &retval); |
1490 | 1474 | |
... | ... | @@ -1493,11 +1477,9 @@ |
1493 | 1477 | if (retval != -ENOSPC) |
1494 | 1478 | return retval; |
1495 | 1479 | |
1496 | -#ifdef CONFIG_EXT4_INDEX | |
1497 | 1480 | if (blocks == 1 && !dx_fallback && |
1498 | 1481 | EXT4_HAS_COMPAT_FEATURE(sb, EXT4_FEATURE_COMPAT_DIR_INDEX)) |
1499 | 1482 | return make_indexed_dir(handle, dentry, inode, bh); |
1500 | -#endif | |
1501 | 1483 | brelse(bh); |
1502 | 1484 | } |
1503 | 1485 | bh = ext4_append(handle, dir, &block, &retval); |
... | ... | @@ -1509,7 +1491,6 @@ |
1509 | 1491 | return add_dirent_to_buf(handle, dentry, inode, de, bh); |
1510 | 1492 | } |
1511 | 1493 | |
1512 | -#ifdef CONFIG_EXT4_INDEX | |
1513 | 1494 | /* |
1514 | 1495 | * Returns 0 for success, or a negative error value |
1515 | 1496 | */ |
... | ... | @@ -1644,7 +1625,6 @@ |
1644 | 1625 | dx_release(frames); |
1645 | 1626 | return err; |
1646 | 1627 | } |
1647 | -#endif | |
1648 | 1628 | |
1649 | 1629 | /* |
1650 | 1630 | * ext4_delete_entry deletes a directory entry by merging it with the |
include/linux/ext4_fs.h
... | ... | @@ -36,10 +36,6 @@ |
36 | 36 | /*max window size: 1024(direct blocks) + 3([t,d]indirect blocks) */ |
37 | 37 | #define EXT4_MAX_RESERVE_BLOCKS 1027 |
38 | 38 | #define EXT4_RESERVE_WINDOW_NOT_ALLOCATED 0 |
39 | -/* | |
40 | - * Always enable hashed directories | |
41 | - */ | |
42 | -#define CONFIG_EXT4_INDEX | |
43 | 39 | |
44 | 40 | /* |
45 | 41 | * Debug code |
46 | 42 | |
... | ... | @@ -766,17 +762,11 @@ |
766 | 762 | * (c) Daniel Phillips, 2001 |
767 | 763 | */ |
768 | 764 | |
769 | -#ifdef CONFIG_EXT4_INDEX | |
770 | - #define is_dx(dir) (EXT4_HAS_COMPAT_FEATURE(dir->i_sb, \ | |
771 | - EXT4_FEATURE_COMPAT_DIR_INDEX) && \ | |
765 | +#define is_dx(dir) (EXT4_HAS_COMPAT_FEATURE(dir->i_sb, \ | |
766 | + EXT4_FEATURE_COMPAT_DIR_INDEX) && \ | |
772 | 767 | (EXT4_I(dir)->i_flags & EXT4_INDEX_FL)) |
773 | 768 | #define EXT4_DIR_LINK_MAX(dir) (!is_dx(dir) && (dir)->i_nlink >= EXT4_LINK_MAX) |
774 | 769 | #define EXT4_DIR_LINK_EMPTY(dir) ((dir)->i_nlink == 2 || (dir)->i_nlink == 1) |
775 | -#else | |
776 | - #define is_dx(dir) 0 | |
777 | -#define EXT4_DIR_LINK_MAX(dir) ((dir)->i_nlink >= EXT4_LINK_MAX) | |
778 | -#define EXT4_DIR_LINK_EMPTY(dir) ((dir)->i_nlink == 2) | |
779 | -#endif | |
780 | 770 | |
781 | 771 | /* Legal values for the dx_root hash_version field: */ |
782 | 772 |