IOCTL-XFS-RTGROUP-GEOMETRY(2)

NAME
ioctl_xfs_rtgroup_geometry - query XFS realtime group geometry information

SYNOPSIS
#include <xfs/xfs_fs.h>

int ioctl(int fd, XFS_IOC_RTGROUP_GEOMETRY, struct xfs_rtgroup_geometry *arg);

DESCRIPTION
This XFS ioctl retrieves the geometry information for a given realtime group. The geometry information is conveyed in a structure of the following form:

struct xfs_rtgroup_geometry {
	__u32  rg_number;
	__u32  rg_length;
	__u32  rg_sick;
	__u32  rg_checked;
	__u32  rg_flags;
	__u32  rg_reserved[27];
};

rg_number
    The caller must set this field to the index of the realtime group that the caller wishes to learn about.

rg_length
    The length of the realtime group is returned in this field, in units of filesystem blocks. rg_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.

rg_reserved and rg_pad
    All reserved fields will be set to zero on return.

The fields rg_sick and rg_checked indicate the relative health of various realtime group metadata:

•   If a given sick flag is set in rg_sick, then that piece of metadata has been observed to be damaged. The same bit will be set in rg_checked.

•   If a given sick flag is set in rg_checked and is not set in rg_sick, then that piece of metadata has been checked and is not faulty.

•   If a given sick flag is not set in rg_checked, then no conclusion can be made.

The following flags apply to these fields:

    XFS_RTGROUP_GEOM_SICK_SUPER
        Realtime group superblock.

    XFS_RTGROUP_GEOM_SICK_BITMAP
        Realtime bitmap for this group.

    XFS_RTGROUP_GEOM_SICK_SUMMARY
        Realtime summary for this group.

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 realtime 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)