Man page - ioctl_xfs_ag_geometry(2)
Packages contains this manual
- handle_to_fshandle(3)
- ioctl_xfs_getparents(2)
- ioctl_xfs_inumbers(2)
- readlink_by_handle(3)
- ioctl_xfs_setresblks(2)
- ioctl_xfs_getbmap(2)
- ioctl_xfs_fsbulkstat(2)
- ioctl_xfs_rtgroup_geometry(2)
- ioctl_xfs_scrub_metadata(2)
- fd_to_handle(3)
- ioctl_xfs_commit_range(2)
- ioctl_xfs_goingdown(2)
- free_handle(3)
- fssetdm_by_handle(3)
- ioctl_xfs_fssetxattr(2)
- ioctl_xfs_scrubv_metadata(2)
- attr_multi_by_handle(3)
- path_to_fshandle(3)
- ioctl_xfs_fsgetxattra(2)
- ioctl_xfs_exchange_range(2)
- open_by_handle(3)
- ioctl_xfs_start_commit(2)
- ioctl_xfs_fscounts(2)
- attr_list_by_handle(3)
- ioctl_xfs_ag_geometry(2)
- path_to_handle(3)
- ioctl_xfs_fsgetxattr(2)
- ioctl_xfs_getbmapx(2)
- ioctl_xfs_fsinumbers(2)
- ioctl_xfs_getresblks(2)
- ioctl_xfs_fsgeometry(2)
- getparentpaths_by_handle(3)
- getparents_by_handle(3)
- ioctl_xfs_bulkstat(2)
- ioctl_xfs_getbmapa(2)
- xfsctl(3)
apt-get install xfslibs-dev
Manual
IOCTL-XFS-AG-GEOMETRY
NAMESYNOPSIS
DESCRIPTION
RETURN VALUE
ERRORS
CONFORMING TO
SEE ALSO
NAME
ioctl_xfs_ag_geometry - query XFS allocation group geometry information
SYNOPSIS
#include <xfs/xfs_fs.h>
int ioctl(int fd , XFS_IOC_AG_GEOMETRY, struct xfs_ag_geometry * arg );
DESCRIPTION
This XFS ioctl retrieves the geometry information for a given allocation group. The geometry information is conveyed in a structure of the following form:
struct xfs_ag_geometry {
|
uint32_t ag_number; |
||
|
uint32_t ag_length; |
||
|
uint32_t ag_freeblks; |
||
|
uint32_t ag_icount; |
||
|
uint32_t ag_ifree; |
||
|
uint32_t ag_sick; |
||
|
uint32_t ag_checked; |
||
|
uint32_t ag_flags; |
||
|
uint64_t ag_reserved[12]; |
};
ag_number
The caller must set this field to the index of the allocation group that the caller wishes to learn about.
ag_length
The length of the allocation group is returned in this field, in units of filesystem blocks.
ag_freeblks
The number of free blocks in the allocation group is returned in this field, in units of filesystem blocks.
ag_icount
The number of inode records allocated in this allocation group is returned in this field.
ag_ifree
The number of unused inode records (of the space allocated) in this allocation group is returned in this field.
ag_flags
The caller can set this field to change the operational behavior of the ioctl. Currently no flags are defined, so this field must be zero.
ag_reserved
All reserved fields will be set to zero on return.
The fields ag_sick and ag_checked indicate the relative health of various allocation group metadata:
|
• |
If a given sick flag is set in ag_sick , then that piece of metadata has been observed to be damaged. The same bit will be set in ag_checked . |
||
|
• |
If a given sick flag is set in ag_checked and is not set in ag_sick , then that piece of metadata has been checked and is not faulty. |
||
|
• |
If a given sick flag is not set in ag_checked , then no conclusion can be made. |
The following flags apply to these fields:
XFS_AG_GEOM_SICK_SB
Allocation group superblock.
XFS_AG_GEOM_SICK_AGF
Free space header.
XFS_AG_GEOM_SICK_AGFL
Free space reserve list.
XFS_AG_GEOM_SICK_AGI
Inode header.
XFS_AG_GEOM_SICK_BNOBT or XFS_AG_GEOM_SICK_CNTBT
Free space btrees.
XFS_AG_GEOM_SICK_INOBT or XFS_AG_GEOM_SICK_FINOBT
Inode btrees.
XFS_AG_GEOM_SICK_RMAPBT
Reverse mapping btree.
XFS_AG_GEOM_SICK_REFCNTBT
Reference count btree.
RETURN VALUE
On error, -1 is returned, and errno is set to indicate the error.
ERRORS
Error codes can
be one of, but are not limited to, the following:
EFSBADCRC
Metadata checksum validation failed while performing the query.
EFSCORRUPTED
Metadata corruption was encountered while performing the query.
|
EINVAL |
The specified allocation group number is not valid for this filesystem. |
||
|
EIO |
An I/O error was encountered while performing the query. |
CONFORMING TO
This API is specific to XFS filesystem on the Linux kernel.
SEE ALSO
ioctl (2)