/* Generated by ./xlat/gen.sh from ./xlat/btrfs_qgroup_limit_flags.in; do not edit. */
#if !(defined(BTRFS_QGROUP_LIMIT_MAX_RFER) || (defined(HAVE_DECL_BTRFS_QGROUP_LIMIT_MAX_RFER) && HAVE_DECL_BTRFS_QGROUP_LIMIT_MAX_RFER))
# define BTRFS_QGROUP_LIMIT_MAX_RFER (1ULL << 0)
#endif
#if !(defined(BTRFS_QGROUP_LIMIT_MAX_EXCL) || (defined(HAVE_DECL_BTRFS_QGROUP_LIMIT_MAX_EXCL) && HAVE_DECL_BTRFS_QGROUP_LIMIT_MAX_EXCL))
# define BTRFS_QGROUP_LIMIT_MAX_EXCL (1ULL << 1)
#endif
#if !(defined(BTRFS_QGROUP_LIMIT_RSV_RFER) || (defined(HAVE_DECL_BTRFS_QGROUP_LIMIT_RSV_RFER) && HAVE_DECL_BTRFS_QGROUP_LIMIT_RSV_RFER))
# define BTRFS_QGROUP_LIMIT_RSV_RFER (1ULL << 2)
#endif
#if !(defined(BTRFS_QGROUP_LIMIT_RSV_EXCL) || (defined(HAVE_DECL_BTRFS_QGROUP_LIMIT_RSV_EXCL) && HAVE_DECL_BTRFS_QGROUP_LIMIT_RSV_EXCL))
# define BTRFS_QGROUP_LIMIT_RSV_EXCL (1ULL << 3)
#endif
#if !(defined(BTRFS_QGROUP_LIMIT_RFER_CMPR) || (defined(HAVE_DECL_BTRFS_QGROUP_LIMIT_RFER_CMPR) && HAVE_DECL_BTRFS_QGROUP_LIMIT_RFER_CMPR))
# define BTRFS_QGROUP_LIMIT_RFER_CMPR (1ULL << 4)
#endif
#if !(defined(BTRFS_QGROUP_LIMIT_EXCL_CMPR) || (defined(HAVE_DECL_BTRFS_QGROUP_LIMIT_EXCL_CMPR) && HAVE_DECL_BTRFS_QGROUP_LIMIT_EXCL_CMPR))
# define BTRFS_QGROUP_LIMIT_EXCL_CMPR (1ULL << 5)
#endif

#ifdef IN_MPERS

extern const struct xlat btrfs_qgroup_limit_flags[];

#else

# if !(defined HAVE_M32_MPERS || defined HAVE_MX32_MPERS)
static
# endif
const struct xlat btrfs_qgroup_limit_flags[] = {
 XLAT_TYPE(uint64_t, BTRFS_QGROUP_LIMIT_MAX_RFER),
 XLAT_TYPE(uint64_t, BTRFS_QGROUP_LIMIT_MAX_EXCL),
 XLAT_TYPE(uint64_t, BTRFS_QGROUP_LIMIT_RSV_RFER),
 XLAT_TYPE(uint64_t, BTRFS_QGROUP_LIMIT_RSV_EXCL),
 XLAT_TYPE(uint64_t, BTRFS_QGROUP_LIMIT_RFER_CMPR),
 XLAT_TYPE(uint64_t, BTRFS_QGROUP_LIMIT_EXCL_CMPR),
 XLAT_END
};

#endif /* !IN_MPERS */
