summaryrefslogtreecommitdiffstats
path: root/fs/ext4/ext4_i.h
diff options
context:
space:
mode:
authorTheodore Ts'o2008-11-05 06:14:04 +0100
committerTheodore Ts'o2008-11-05 06:14:04 +0100
commit498e5f24158da7bf8fa48074a70e370e22844492 (patch)
tree1434b349c8eca3b0667af0b385533cbcd599c1c3 /fs/ext4/ext4_i.h
parentext4: Make ext4_group_t be an unsigned int (diff)
downloadkernel-qcow2-linux-498e5f24158da7bf8fa48074a70e370e22844492.tar.gz
kernel-qcow2-linux-498e5f24158da7bf8fa48074a70e370e22844492.tar.xz
kernel-qcow2-linux-498e5f24158da7bf8fa48074a70e370e22844492.zip
ext4: Change unsigned long to unsigned int
Convert the unsigned longs that are most responsible for bloating the stack usage on 64-bit systems. Nearly all places in the ext3/4 code which uses "unsigned long" is probably a bug, since on 32-bit systems a ulong a 32-bits, which means we are wasting stack space on 64-bit systems. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/ext4_i.h')
-rw-r--r--fs/ext4/ext4_i.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/fs/ext4/ext4_i.h b/fs/ext4/ext4_i.h
index 0a9ebe580195..e69acc16f5c4 100644
--- a/fs/ext4/ext4_i.h
+++ b/fs/ext4/ext4_i.h
@@ -100,9 +100,6 @@ struct ext4_inode_info {
*/
loff_t i_disksize;
- /* on-disk additional length */
- __u16 i_extra_isize;
-
/*
* i_data_sem is for serialising ext4_truncate() against
* ext4_getblock(). In the 2.4 ext2 design, great chunks of inode's
@@ -129,10 +126,14 @@ struct ext4_inode_info {
spinlock_t i_prealloc_lock;
/* allocation reservation info for delalloc */
- unsigned long i_reserved_data_blocks;
- unsigned long i_reserved_meta_blocks;
- unsigned long i_allocated_meta_blocks;
+ unsigned int i_reserved_data_blocks;
+ unsigned int i_reserved_meta_blocks;
+ unsigned int i_allocated_meta_blocks;
unsigned short i_delalloc_reserved_flag;
+
+ /* on-disk additional length */
+ __u16 i_extra_isize;
+
spinlock_t i_block_reservation_lock;
};