1
0
Fork 0
alistair23-linux/fs/ext4
Wei Yongjun 3d0518f475 ext4: New rec_len encoding for very large blocksizes
The rec_len field in the directory entry is 16 bits, so to encode
blocksizes larger than 64k becomes problematic.  This patch allows us
to supprot block sizes up to 256k, by using the low 2 bits to extend
the range of rec_len to 2**18-1 (since valid rec_len sizes must be a
multiple of 4).  We use the convention that a rec_len of 0 or 65535
means the filesystem block size, for compatibility with older kernels.

It's unlikely we'll see VM pages of up to 256k, but at some point we
might find that the Linux VM has been enhanced to support filesystem
block sizes > than the VM page size, at which point it might be useful
for some applications to allow very large filesystem block sizes.

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2009-02-14 23:01:36 -05:00
..
Kconfig fs/Kconfig: move ext2, ext3, ext4, JBD, JBD2 out 2008-10-20 11:43:59 -07:00
Makefile ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
acl.c [PATCH] sanitize ->permission() prototype 2008-07-26 20:53:14 -04:00
acl.h ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
balloc.c ext4: remove call to ext4_group_desc() in ext4_group_used_meta_blocks() 2009-02-06 16:23:37 -05:00
bitmap.c ext4: Change unsigned long to unsigned int 2008-11-05 00:14:04 -05:00
dir.c ext4: New rec_len encoding for very large blocksizes 2009-02-14 23:01:36 -05:00
ext4.h ext4: New rec_len encoding for very large blocksizes 2009-02-14 23:01:36 -05:00
ext4_extents.h ext4: Remove i_ext_generation from ext4_inode_info structure 2008-11-04 18:46:03 -05:00
ext4_i.h ext4: Remove stale block allocator references from ext4.h 2009-02-06 16:23:37 -05:00
ext4_jbd2.c ext4: Allow ext4 to run without a journal 2009-01-07 00:06:22 -05:00
ext4_jbd2.h ext4: Remove "extents" mount option 2009-01-06 14:53:16 -05:00
ext4_sb.h ext4: Remove stale block allocator references from ext4.h 2009-02-06 16:23:37 -05:00
extents.c ext4: fix header check in ext4_ext_search_right() for deep extent trees. 2009-03-10 18:18:47 -04:00
file.c ext4: sparse fixes 2008-11-22 15:04:59 -05:00
fsync.c ext4: Add debugging markers that can be used by systemtap 2008-10-05 20:50:06 -04:00
group.h ext4: Rename read_block_bitmap() to ext4_read_block_bitmap() 2008-07-11 19:27:31 -04:00
hash.c ext4: Add support for non-native signed/unsigned htree hash algorithms 2008-10-28 13:21:44 -04:00
ialloc.c ext4: Use lowercase names of quota functions 2009-03-26 02:18:36 +01:00
inode.c ext4: Use lowercase names of quota functions 2009-03-26 02:18:36 +01:00
ioctl.c ext4: Allow ext4 to run without a journal 2009-01-07 00:06:22 -05:00
mballoc.c ext4: Use lowercase names of quota functions 2009-03-26 02:18:36 +01:00
mballoc.h ext4: Remove stale block allocator references from ext4.h 2009-02-06 16:23:37 -05:00
migrate.c ext4: Fix NULL dereference in ext4_ext_migrate()'s error handling 2009-02-15 20:02:19 -05:00
namei.c ext4: New rec_len encoding for very large blocksizes 2009-02-14 23:01:36 -05:00
namei.h [PATCH] ext4: rename ext4 symbols to avoid duplication of ext3 symbols 2006-10-11 11:14:15 -07:00
resize.c ext4: Initialize the new group descriptor when resizing the filesystem 2009-01-26 19:06:41 -05:00
super.c ext4: Use lowercase names of quota functions 2009-03-26 02:18:36 +01:00
symlink.c ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
xattr.c ext4: Use lowercase names of quota functions 2009-03-26 02:18:36 +01:00
xattr.h ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
xattr_security.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
xattr_trusted.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00
xattr_user.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00