1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef _LINUX_DQBLK_XFS_H 20#define _LINUX_DQBLK_XFS_H 21#include <linux/types.h> 22#define XQM_CMD(x) (('X' << 8) + (x)) 23#define XQM_COMMAND(x) (((x) & (0xff << 8)) == ('X' << 8)) 24#define XQM_USRQUOTA 0 25#define XQM_GRPQUOTA 1 26#define XQM_PRJQUOTA 2 27#define XQM_MAXQUOTAS 3 28#define Q_XQUOTAON XQM_CMD(1) 29#define Q_XQUOTAOFF XQM_CMD(2) 30#define Q_XGETQUOTA XQM_CMD(3) 31#define Q_XSETQLIM XQM_CMD(4) 32#define Q_XGETQSTAT XQM_CMD(5) 33#define Q_XQUOTARM XQM_CMD(6) 34#define Q_XQUOTASYNC XQM_CMD(7) 35#define Q_XGETQSTATV XQM_CMD(8) 36#define Q_XGETNEXTQUOTA XQM_CMD(9) 37#define FS_DQUOT_VERSION 1 38typedef struct fs_disk_quota { 39 __s8 d_version; 40 __s8 d_flags; 41 __u16 d_fieldmask; 42 __u32 d_id; 43 __u64 d_blk_hardlimit; 44 __u64 d_blk_softlimit; 45 __u64 d_ino_hardlimit; 46 __u64 d_ino_softlimit; 47 __u64 d_bcount; 48 __u64 d_icount; 49 __s32 d_itimer; 50 __s32 d_btimer; 51 __u16 d_iwarns; 52 __u16 d_bwarns; 53 __s32 d_padding2; 54 __u64 d_rtb_hardlimit; 55 __u64 d_rtb_softlimit; 56 __u64 d_rtbcount; 57 __s32 d_rtbtimer; 58 __u16 d_rtbwarns; 59 __s16 d_padding3; 60 char d_padding4[8]; 61} fs_disk_quota_t; 62#define FS_DQ_ISOFT (1 << 0) 63#define FS_DQ_IHARD (1 << 1) 64#define FS_DQ_BSOFT (1 << 2) 65#define FS_DQ_BHARD (1 << 3) 66#define FS_DQ_RTBSOFT (1 << 4) 67#define FS_DQ_RTBHARD (1 << 5) 68#define FS_DQ_LIMIT_MASK (FS_DQ_ISOFT | FS_DQ_IHARD | FS_DQ_BSOFT | FS_DQ_BHARD | FS_DQ_RTBSOFT | FS_DQ_RTBHARD) 69#define FS_DQ_BTIMER (1 << 6) 70#define FS_DQ_ITIMER (1 << 7) 71#define FS_DQ_RTBTIMER (1 << 8) 72#define FS_DQ_TIMER_MASK (FS_DQ_BTIMER | FS_DQ_ITIMER | FS_DQ_RTBTIMER) 73#define FS_DQ_BWARNS (1 << 9) 74#define FS_DQ_IWARNS (1 << 10) 75#define FS_DQ_RTBWARNS (1 << 11) 76#define FS_DQ_WARNS_MASK (FS_DQ_BWARNS | FS_DQ_IWARNS | FS_DQ_RTBWARNS) 77#define FS_DQ_BCOUNT (1 << 12) 78#define FS_DQ_ICOUNT (1 << 13) 79#define FS_DQ_RTBCOUNT (1 << 14) 80#define FS_DQ_ACCT_MASK (FS_DQ_BCOUNT | FS_DQ_ICOUNT | FS_DQ_RTBCOUNT) 81#define FS_QUOTA_UDQ_ACCT (1 << 0) 82#define FS_QUOTA_UDQ_ENFD (1 << 1) 83#define FS_QUOTA_GDQ_ACCT (1 << 2) 84#define FS_QUOTA_GDQ_ENFD (1 << 3) 85#define FS_QUOTA_PDQ_ACCT (1 << 4) 86#define FS_QUOTA_PDQ_ENFD (1 << 5) 87#define FS_USER_QUOTA (1 << 0) 88#define FS_PROJ_QUOTA (1 << 1) 89#define FS_GROUP_QUOTA (1 << 2) 90#define FS_QSTAT_VERSION 1 91typedef struct fs_qfilestat { 92 __u64 qfs_ino; 93 __u64 qfs_nblks; 94 __u32 qfs_nextents; 95} fs_qfilestat_t; 96typedef struct fs_quota_stat { 97 __s8 qs_version; 98 __u16 qs_flags; 99 __s8 qs_pad; 100 fs_qfilestat_t qs_uquota; 101 fs_qfilestat_t qs_gquota; 102 __u32 qs_incoredqs; 103 __s32 qs_btimelimit; 104 __s32 qs_itimelimit; 105 __s32 qs_rtbtimelimit; 106 __u16 qs_bwarnlimit; 107 __u16 qs_iwarnlimit; 108} fs_quota_stat_t; 109#define FS_QSTATV_VERSION1 1 110struct fs_qfilestatv { 111 __u64 qfs_ino; 112 __u64 qfs_nblks; 113 __u32 qfs_nextents; 114 __u32 qfs_pad; 115}; 116struct fs_quota_statv { 117 __s8 qs_version; 118 __u8 qs_pad1; 119 __u16 qs_flags; 120 __u32 qs_incoredqs; 121 struct fs_qfilestatv qs_uquota; 122 struct fs_qfilestatv qs_gquota; 123 struct fs_qfilestatv qs_pquota; 124 __s32 qs_btimelimit; 125 __s32 qs_itimelimit; 126 __s32 qs_rtbtimelimit; 127 __u16 qs_bwarnlimit; 128 __u16 qs_iwarnlimit; 129 __u64 qs_pad2[8]; 130}; 131#endif 132