ext4: teach the inode allocator to use a goal inode number
authorAndreas Dilger <adilger@sun.com>
Sat, 13 Jun 2009 15:45:35 +0000 (11:45 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 13 Jun 2009 15:45:35 +0000 (11:45 -0400)
commit11013911daea4820147ae6d7094dd7c6894e8651
treef8e9f9d2058e0dfc826d4df3d88a7eb18a56b3f3
parentf157a4aa98a18bd3817a72bea90d48494e2586e7
ext4: teach the inode allocator to use a goal inode number

Enhance the inode allocator to take a goal inode number as a
paremeter; if it is specified, it takes precedence over Orlov or
parent directory inode allocation algorithms.

The extents migration function uses the goal inode number so that the
extent trees allocated the migration function use the correct flex_bg.
In the future, the goal inode functionality will also be used to
allocate an adjacent inode for the extended attributes.

Also, for testing purposes the goal inode number can be specified via
/sys/fs/{dev}/inode_goal.  This can be useful for testing inode
allocation beyond 2^32 blocks on very large filesystems.

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Documentation/ABI/testing/sysfs-fs-ext4
fs/ext4/ext4.h
fs/ext4/ialloc.c
fs/ext4/migrate.c
fs/ext4/namei.c
fs/ext4/super.c