diff options
| author | vmallika <vmallika@redhat.com> | 2015-04-15 17:35:07 +0530 | 
|---|---|---|
| committer | Vijay Bellur <vbellur@redhat.com> | 2015-05-07 23:54:33 -0700 | 
| commit | ffbe47e0ec8411313b666a8705f31a67d3862763 (patch) | |
| tree | a161fdbec2678aea5329fae1dcb932cefe4d8395 /libglusterfs/src/quota-common-utils.h | |
| parent | 753a603ce3259f3c6667a48ff4001512941f9128 (diff) | |
quota: support for inode quota in quota.conf
Currently when quota limit is set, corresponding gfid
is set in quota.conf. This patch supports storing
inode-quota limits in quota.conf and also stores
additional byte for each gfid to differentiate
between usage quota limit and inode quota limit.
Change-Id: I444d7399407594edd280e640681679a784d4c46a
BUG: 1218170
Signed-off-by: vmallika <vmallika@redhat.com>
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/10069
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/10524
Diffstat (limited to 'libglusterfs/src/quota-common-utils.h')
| -rw-r--r-- | libglusterfs/src/quota-common-utils.h | 27 | 
1 files changed, 27 insertions, 0 deletions
diff --git a/libglusterfs/src/quota-common-utils.h b/libglusterfs/src/quota-common-utils.h index eff86850dd5..e80c74cba72 100644 --- a/libglusterfs/src/quota-common-utils.h +++ b/libglusterfs/src/quota-common-utils.h @@ -13,6 +13,15 @@  #include "iatt.h" +#define GF_QUOTA_CONF_VERSION 1.2 +#define QUOTA_CONF_HEADER                           \ +        "GlusterFS Quota conf | version: v1.2\n" + +typedef enum { +        GF_QUOTA_CONF_TYPE_USAGE = 1, +        GF_QUOTA_CONF_TYPE_OBJECTS +} gf_quota_conf_type_t; +  struct _quota_limits {          int64_t hl;          int64_t sl; @@ -36,4 +45,22 @@ int32_t  quota_dict_set_meta (dict_t *dict, char *key, const quota_meta_t *meta,                       ia_type_t ia_type); +int32_t +quota_conf_read_header (int fd, char *buf); + +int32_t +quota_conf_read_version (int fd, float *version); + +int32_t +quota_conf_write_header (int fd); + +int32_t +quota_conf_write_gfid (int fd, void *buf, char type); + +int32_t +quota_conf_read_gfid (int fd, void *buf, char *type, float version); + +int32_t +quota_conf_skip_header (int fd); +  #endif /* _QUOTA_COMMON_UTILS_H */  | 
