diff options
author | bde <bde@FreeBSD.org> | 1998-10-13 15:45:43 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1998-10-13 15:45:43 +0000 |
commit | 8ccf93af582d83baeb145bbbbd40f6cd8fe99c68 (patch) | |
tree | 44cc40318f4ab5469f77e85d0002b65783b92f2a /sys/ufs | |
parent | 43cb8a7cb93931496071f3ec7aa0f9bc83cf82e6 (diff) | |
download | FreeBSD-src-8ccf93af582d83baeb145bbbbd40f6cd8fe99c68.zip FreeBSD-src-8ccf93af582d83baeb145bbbbd40f6cd8fe99c68.tar.gz |
Fixed bloatage of `struct inode'. We used 5 "spare" fields for ext2fs,
but when i_effnlink was added to support soft updates, there was only
room for 4 spares. The number of spares was not reduced, so the inode
size became 260 (on i386's), or 512 after rounding up by malloc().
Use one spare field in `struct dinode' instead of the 5th spare field
in the inode and reduced to 4 spares in the inode so that the size is
256 again.
Changed the types of the spares in the inode from int to u_int32_t
so that the inode size has more chance of being <= 256 under other
arches, and downdated ext2fs to match (it was broken to use ints
before rev.1.1).
Diffstat (limited to 'sys/ufs')
-rw-r--r-- | sys/ufs/ufs/inode.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/ufs/ufs/inode.h b/sys/ufs/ufs/inode.h index 76b7b5e..4b6ca7d 100644 --- a/sys/ufs/ufs/inode.h +++ b/sys/ufs/ufs/inode.h @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)inode.h 8.9 (Berkeley) 5/14/95 - * $Id: inode.h,v 1.22 1998/03/26 20:53:58 phk Exp $ + * $Id: inode.h,v 1.23 1998/07/03 22:17:01 bde Exp $ */ #ifndef _UFS_UFS_INODE_H_ @@ -92,7 +92,7 @@ struct inode { doff_t i_offset; /* Offset of free space in directory. */ ino_t i_ino; /* Inode number of found directory. */ u_int32_t i_reclen; /* Size of found directory entry. */ - int i_spare[5]; /* XXX actually non-spare (for ext2fs). */ + u_int32_t i_spare[4]; /* XXX actually non-spare (for ext2fs). */ /* * The on-disk dinode itself. */ |