fs_disk_quota2type
Filesystem disk quota
Usage
#include <xfs/xqm.h>
#define FS_DQUOT_VERSION 1 // fs_disk_quota.d_version
#define XFS_USER_QUOTA (1<<0) // User quota type #define XFS_PROJ_QUOTA (1<<1) // Project quota type #define XFS_GROUP_QUOTA (1<<2) // Group quota type
struct fs_disk_quota {
int8_t d_version;
int8_t d_flags;
uint16_t d_fieldmask;
uint32_t d_id;
uint64_t d_blk_hardlimit;
uint64_t d_blk_softlimit;
uint64_t d_ino_hardlimit;
uint64_t d_ino_softlimit;
uint64_t d_bcount;
uint64_t d_icount;
int32_t d_itimer;
int32_t d_btimer;
uint16_t d_iwarns;
uint16_t d_bwarns;
int32_t d_padding2;
uint64_t d_rtb_hardlimit;
uint64_t d_rtb_softlimit;
uint64_t d_rtbcount;
int32_t d_rtbtimer;
uint16_t d_rtbwarns;
int16_t d_padding3;
char d_padding4[8]; };
Library
Standard C library (libc)
Overview
All the blk units are in BBs (Basic Blocks) of 512 bytes.
.d_version
|
Version of this structure. |
|---|---|
.d_flags
|
|
.d_fieldmask
|
Field specifier. |
.d_id
|
User, project, or group ID. |
.d_blk_hardlimit
|
Absolute limit on disk blocks. |
.d_blk_softlimit
|
Preferred limit on disk blocks. |
.d_ino_hardlimit
|
Maximum # allocated inodes. |
.d_ino_softlimit
|
Preferred inode limit. |
.d_bcount
|
# disk blocks owned by the user. |
.d_icount
|
# inodes owned by the user. |
.d_itimer
|
Zero if within inode limits; if not, we refuse service. |
.d_btimer
|
Similar to above; for disk blocks. |
.d_iwarns
|
# warnings issued with respect to # of inodes. |
.d_bwarns
|
# warnings issued with respect to disk blocks. |
.d_padding2
|
Padding; reserved for future use. |
.d_rtb_hardlimit
|
Absolute limit on realtime (RT) disk blocks. |
.d_rtb_softlimit
|
Preferred limit on RT disk blocks. |
.d_rtbcount
|
# realtime blocks owned. |
.d_rtbtimer
|
Similar to above; for RT disk blocks. |
.d_rtbwarns
|
# warnings issued with respect to RT disk blocks. |
.d_padding3
|
Padding; reserved for future use. |
.d_padding4[8]
|
Yet more padding. |