HP-UX Reference (11i v2 07/12) - 4 File Formats (vol 8)

i
inode_vxfs(4) inode_vxfs(4)
NAME
inode_vxfs - format of a VxFS file system inode
SYNOPSIS
#include <sys/types.h>
#include <sys/fs/vx_inode.h>
DESCRIPTION
A VxFS inode is typically 256 bytes in length, but an inode can also be 512 bytes. You specify the inode size
with mkfs.
An inode entry has the following format:
i_mode The mode and type of file.
i_nlink The number of links to the file.
i_uid The inode owner.
i_gid The inode group.
i_size The size in bytes of the file. Eight bytes are allocated.
i_atime Time of last access, in struct timeval format.
i_mtime Time of last modification, in struct timeval format.
i_ctime Time of last inode change, in struct timeval format.
i_aflags These flags control the allocation and extension of files:
VX_AF_IBAD If set, the inode is invalid. Cleared when fsck is run.
VX_AF_NOEXTEND If set, the file cannot be extended after the current reservation is
exceeded. The reservation can be increased by the VX_SETEXT
ioctl, but the file is not automatically extended.
VX_AF_NOGROW If set, the file cannot be extended after the current reservation is
exceeded. This flag is typically set because an I/O error occurred
while extending a file. Cleared on truncation or when setext is run.
VX_AF_ALIGN If set, the file must be allocated in extents of a fixed size and align-
ment. If an extent of i_fixextsize blocks aligned on an i_fixextsize
boundary cannot be found, then the allocation fails. The alignment
is relative to the beginning of the allocation unit.
i_orgtype Mapping type. Indicates how to interpret the inode mapping area. Currently there are
four supported mapping types:
IORG_NONE Mapping area is unused. IORG_NONE is used for files that have no
associated data storage. Because there is no need for either extents
or immediate data, the mapping area is unused. Block and charac-
ter special files, for example, use this organization type.
IORG_EXT4 Mapping area consists of an array of 32-bit extent block addresses
and sizes.
IORG_IMMED Mapping area itself is a data block. This mapping is referred to as
Immediate Inode Data.
IORG_TYPED Mapping area consists of typed-extent structures.
i_eopflags Extended inode operation flag area.
i_eopdata Extended inode operation data area.
i_ftarea This field is a union. The contents are determined by file type.
For devices, the following field is supported:
i_rdev The device number of a block or character special device.
For directories, the following field is supported:
HP-UX 11i Version 2: December 2007 Update 1 Hewlett-Packard Company 171